Principal Software Architect

Job Description:  

Principal Software Engineer actively contributes to the continuous maturation of engineering policies and best practices for software development and user interface design; and evaluate, select, and implement development tools, processes, and new technologies. The architect is responsible for transforming our application architecture into a cloud native, scalable, resilient and agile architecture by collaborating with our delivery organizations and building a cloud developer community. 

  • Creates robust and scalable product designs that meet customer requirements and are extensible and anticipate future product needs;   
  • Gathers requirements from stakeholders and performs critical analysis of the product’s feature set;  
  • Conducts architectural and design reviews for a product or subsystem;  
  • Product dependencies and risks are identified early and appropriate mitigation strategies are specified. Timely dependency determination allows teams to make effective adjustments to designs and schedules;  
  • Anticipates the key architectural issues in the planning phase for a product;  
  • Recognizes patterns of defects and drives design improvements that are adopted across the product line;  
  • Fully understands the customer experience and drives product improvements in architecture, design and implementation methods to improve the experience;  
  • Establishes and communicates best practices for architecture, design and development methods across product teams and business groups;  
  • Works without supervision on the most complex projects and complete latitude for independent judgment;   
  • Act as a mentor to team members and aid in adherence to established coding techniques and standards.  
  • Actively participate in the dissemination of information and education of staff through formal and informal presentations and training events;  
  • Evaluate, select, procure, and implement 3rd party software as owner of corporate product standardization initiative;  
  • Research and present new technologies, design patterns, and practices;   
  • Aid project teams in the conduct of requirements, design, and coding reviews and inspections to ensure the product is robust, extensible, and scalable; and – Mentor and guide senior developers on tactics and approaches for architectural design, user interface design, dependency management, and software development. 
  • Minimum of 10 years of hands-on software product development experience including a minimum of 5 years’ experience with analysis, design, and programming in a multi-product software development organization;  
  • 3+ years of proven success in architecture for a highly micro-service based SaaS, implementation. 
  • 5+ years in an application design of cloud-based environments for applications including expertise in building large and distributed systems. 
  • Deep knowledge and recent extensive experience with Microsoft core development technologies with special aptitude towards .NET technologies; additional experience with SQL development is a plus;  
  • Agile/Scrum, Lean, Design for Six-Sigma (DfSS or DMADV), or comparable credentials are a plus;  
  • Experience with analysis, specification, design, development, testing, and deployment of software systems;  
  • Demonstrated skills in troubleshooting and resolving issues during all phases of the product development life cycle;  
  • Solid understanding of web technologies, relational databases, and multi-tier applications is expected; and  
  • Methodical and pragmatic problem-solver who inspires confidence and trust with internal staff and users, with a strong sense of teamwork, active listening skills, and negotiation and influencing skills.  
  • Must be well-versed in SOA design patterns (e.g., Event-driven architecture, Complex Event Processing, In-Memory Caching, Canonical Data Modeling, Model-View-Controller);  
  • Proficient in one or more Relational and Non-Relational DB technologies such as Oracle, MS SQL Server, MongoDB. 
  • Experience in 12-factor app architecture, design, and implementation;  
  • Experience with Agile development methodologies including unit testing, test-driven development (TDD), Continuous Integration (CI), Continuous Delivery (CD), Pair Programming, and Automated Testing;  
  • Development experience in a public (AWS, Azure, Rackspace) or private cloud environment; and – Strong emphasis on engineering best practices including; Peer Reviews, Code Inspections, and Automation. 
  • 8-10 years of experience in healthcare/specialty pharmacy related environment preferred. 
Position Information
Country Mexico
Location Remote
Job Type Full Time