Domino's Corporate
Job Description
An Application Architect III has mastered the programming language and core library, including its more complex parts, numerous 3rd party libraries, and the tooling around development, building, debugging, testing, and deploying applications. They understand, at a moderate level, all of the services that make up the system and their inter-relationships and communication patterns. They have a deep understanding of the subset on which they are working and are able to mentor less experienced developers in the design of their code and the larger development ecosystem used within the project. They should have an introductory understanding of architectural design patterns especially as related to distributed systems.
Application architecture requires the development of an exhaustive understanding of the specific problem domains, the larger program context in which the architect is working, and the ability to take a longer-term view of the work in order to evaluate different design options. To accomplish this, the developer will need to deepen their understanding of why first and third party code is designed the way it is and from there begin to understand common, underlying design principles. They will also continue to develop mastery of application architecture design patterns and be able to apply to them to solutions they recommend. They must be able to evaluate patterns against potentially competing objectives such as time-to-implementation, long term maintainability, security, performance, etc. and begin to articulate the various tradeoffs of approaches.
**
Duties ** Software Design/Architecture - 80-90% Participate in the selection and design of new patterns/libraries/frameworks used within the store systems project
Consider and incorporate concerns such as extensibility, maintainability, security, operations, performance Produce and apply the initial implementation of the pattern/library/framework Document for, and teach the use of, the pattern/library/framework
Work with product and architecture teams to understand capabilities, epics, and stories
Provide information on the technical feasibility/impact of choices
Work with individual teams to assist developers in the design of per-story work Answer conceptual and technical questions Team Management & Mentoring- 10-20% Help developers follow established patterns and improve their code by participating in code reviews Qualifications: Qualifications 5+ yrs experience as a developer working on large, distributed systems 10+ yrs development in any language, 4 most recent years in C# developing server-side applications Fluent in C#, experience with .Net Standard, .Net Core, and ASP.Net Core Expert with build, debug, and profiling tools (e.g., Jenkins, MSBuild, Nuget, YourKit, RedGate) Expert with design methods/patterns (e.g., DRY, SOLID, ReST) and their practical application Excellent team player with good communication skills with both non-technical & technical co-workers Highly motivated and driven by a desire to solve difficult problems, and learn new technology Additional Information **
Benefits: ** Paid Holidays and Vacation Medical, Dental & Vision benefits that start on the first day of employment No-cost mental health support for employee and dependents Childcare tuition discounts No-cost fitness, nutrition, and wellness programs Fertility benefits Adoption assistance 401k matching contributions 15% off the purchase price of stock Company bonus All your information will be kept confidential according to EEO guidelines. #J-18808-Ljbffr
Duties ** Software Design/Architecture - 80-90% Participate in the selection and design of new patterns/libraries/frameworks used within the store systems project
Consider and incorporate concerns such as extensibility, maintainability, security, operations, performance Produce and apply the initial implementation of the pattern/library/framework Document for, and teach the use of, the pattern/library/framework
Work with product and architecture teams to understand capabilities, epics, and stories
Provide information on the technical feasibility/impact of choices
Work with individual teams to assist developers in the design of per-story work Answer conceptual and technical questions Team Management & Mentoring- 10-20% Help developers follow established patterns and improve their code by participating in code reviews Qualifications: Qualifications 5+ yrs experience as a developer working on large, distributed systems 10+ yrs development in any language, 4 most recent years in C# developing server-side applications Fluent in C#, experience with .Net Standard, .Net Core, and ASP.Net Core Expert with build, debug, and profiling tools (e.g., Jenkins, MSBuild, Nuget, YourKit, RedGate) Expert with design methods/patterns (e.g., DRY, SOLID, ReST) and their practical application Excellent team player with good communication skills with both non-technical & technical co-workers Highly motivated and driven by a desire to solve difficult problems, and learn new technology Additional Information **
Benefits: ** Paid Holidays and Vacation Medical, Dental & Vision benefits that start on the first day of employment No-cost mental health support for employee and dependents Childcare tuition discounts No-cost fitness, nutrition, and wellness programs Fertility benefits Adoption assistance 401k matching contributions 15% off the purchase price of stock Company bonus All your information will be kept confidential according to EEO guidelines. #J-18808-Ljbffr