Principal Software Development Engineer - SCS at iHerb

| Orange County
Sorry, this job was removed at 9:55 a.m. (PST) on Monday, March 1, 2021
Find out who's hiring in Los Angeles.
See all Developer + Engineer jobs in Los Angeles
Apply now
By clicking continue you agree to Built In’s Privacy Policy and Terms of Use.

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


Judgment/Reasoning AbilityAble to identify, troubleshoot and resolve problems quickly using sound judgment, poise and diplomacy.  Ability to use judgment and reasoning skills, and determine when to escalate issues, as required, in a timely manner. 


Physical Demands (Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.)   While performing the duties of this job, the team member is regularly required to talk and hear. The team member is frequently required to sit; use hands and fingers, bend, stoop and reach with hands and arms.  


Work EnvironmentThe noise in the work environment is usually moderate. 


Other factors are:

 

  • Hectic, fast-paced with multi-level distractions

  • Professional, yet casual work environment

  • Office environment

  • Ability to work extended hours as required



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.

Read Full Job Description
Apply now
By clicking continue you agree to Built In’s Privacy Policy and Terms of Use.
Apply now
By clicking continue you agree to Built In’s Privacy Policy and Terms of Use.
Save jobView iHerb's full profileFind similar jobs