Principal Software Development Engineer
Job Summary:
The Principal Software Engineer will be part of an agile development team, building enterprise-grade Applications with different platforms. The Principal Software Engineer is responsible for and owns the architecture and design of projects; the PE is also responsible for coaching, and mentorship of the teams he/she works with. The PE is a key member of the Architecture Review Board in shaping the technical road map and standards for iHerb Supply Chain Solutions applications.
Job Expectations:
Responsible for the ownership (architecture/design/implementation and deployments) of complex software components and systems
Follow secure programming and web application security best practices
Regular practice of CI/CD
Coach the team on software best practices (design, coding, troubleshooting, work breakdown, work estimation, refactor strategies, automated testing, etc.)
Must be able to mentor all levels
Work closely with the other teams to optimize system architecture and project efficiency
Partner with our Product Owner to plan work and prioritization
Provide technical leadership to teammates through coaching and mentorship
Maintain high standards of software quality within the team by establishing good practices and habits
Provide regular updates on projects and team performance
Adhere to high-quality development principles while delivering solutions on-time and on-budget
Identify and encourage areas for growth and improvement within the team
Assist in the collection and documentation of user's requirements, development of user stories, estimates and work plans
Collaborate and add value through participation in peer code reviews, providing comments and suggestions
Ensure the software implementation is in line with the proposed software architecture and recommended design patterns
Analyze and resolve technical and application problems
Research and evaluate a variety of software products
The duties and responsibilities described above may provide only a partial description of this position. This is not an exhaustive list of all aspects of the job. Other duties and responsibilities not outlined in this document may be added as necessary or desirable, with or without notice. Expert knowledge and experience in distributed systems, micro service architecture, and application architectures
Knowledge, Skills and Abilities:
Solid communication skills
Must be able to coach the team on software best practices (design, coding, troubleshooting, work breakdown, work estimation, refactor strategies, automated testing, etc.)
Ability to inspire a team and a strong salesman of ideas
Experience leading a team
Expert knowledge and experience in Distributed systems, microservice architecture, and application architectures
Expert in Object-oriented Design and Analysis (OOA and OOD)
Expert knowledge of C#/.NET Core
Solid knowledge of Relational and non-relational DBs
In-depth knowledge of REST API, event-driven architecture applications, caching, scaling, security, etc.
Solid knowledge of CI/CD pipelines, automated testing and deployment
Expert in debugging, performance profiling and optimization
Production experience with Docker, Kubernetes is a plus
Experience with DDD, Event-Sourcing and CQRS is a plus
Team player with a get it done attitude
Knowledge of the agile development process and Continuous Integration practices and tools
Experience Requirements:
Requires a minimum of eight years to ten years of experience with software development, design patterns, software architecture
Education Requirements:
Bachelor’s Degree in Computer Science/Engineering or related fields
At iHerb we strive for innovation, targeted at delivering a customer-centric experience while transforming the online shopping experience. We change direction and define ourselves in the idea that individually we are incredible but united our growth is infinite and paramount to our success. iHerb strives to be the global industry leader!
iHerb is an Equal Opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability or veteran status. iHerb provides equal employment opportunities to all applicants for employment and prohibits discrimination and harassment.