Senior Software Developer
Job Summary: The Senior Software developer will be part of an agile development team, building and working on enterprise grade software systems on top of the Microsoft .NET development stack. The Senior Software Developer develops information systems by designing, developing, and installing software solutions that are scalable for a high transaction environment.
Job Expectations:
Full life-cycle application development
Design, develop, enhance and support new / existing software, applications, and systems primarily using Microsoft technologies (i.e. .NET Core, SQL, ASP.NET, MVC, and C#).
Designing, coding and debugging applications in various software languages.
Software analysis, code analysis, requirements analysis, software review, identification of code metrics, system risk analysis, software reliability analysis
Object-oriented Design and Analysis (OOA and OOD)
Software modeling and simulation
Software testing and quality assurance
Performance tuning, improvement, balancing, usability, automation
Support, maintain and document software functionality
Integrate software with existing systems
Evaluate and identify new technologies for implementation
Project Planning and Project Management
Maintain standards compliance
Implement localization or globalization of software
Responsible for writing technical design specifications.
Design /develop systems using .NET Core technology, microservices architecture, SOLID principles and REST paradigms.
Knowledge, Skills and Abilities:
Required:
Communication Skills, must be able to articulate, and have a strong technical vocabulary
Display of initiative / self-starter
Understands agile environment
A strong understanding of .Net best practices
Cache management
Unit testing and continuous integration
Exposure to all aspects of the software development life-cycle
Analytical Skill-set
Detail Oriented
Preferred:
A portfolio demonstrating first-hand development experience with complex applications
Ability to cut through ambiguity and use good organizational skills.
A passion for building user-centric solutions
A proven track-record delivering flawless defect free code.
Demonstrated experience of source control, defect reduction and release management
Experience building applications using Domain Driven Design and SOLID principles
Experience building enterprise solutions using microservices architecture
Experience with messaging technologies: Kafka, Google Pub/Sub, RabbitMq
Experience with Nosql Database technologies
Experience with Docker and Kubernetes
Software Knowledge:
Strong knowledge of C# .net and experience with Microsoft Visual Studio
Strong knowledge of SQL and Microsoft SQL server
Experience designing, building, testing and supporting applications with n-tier architecture
Knowledge with RESTful APIs
Knowledge of Windows service and API development
Experience Requirements:
Generally requires a minimum of 6 years of experience with the Microsoft .NET platform, including C#, ASP.NET or four (4) to eight (8) years of experience
Education Requirements:
Bachelor’s Degree in Computer Science or related field required and/or years of experience.
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.