Overview
Skills
Job Details
The Principal, Software Engineer designs cloud-native applications using distributed system architectures. As Principal Software Engineer, you will be responsible for designing, developing, and implementing high-quality software solutions that meet customer requirements. You will collaborate with cross-functional teams to architect and develop scalable and robust software systems while ensuring adherence to coding standards and best practices. You will also be responsible for mentoring and growing junior members of the team.
Essential Job Duties and Responsibilities:
- Utilize your collaborative skills to work with business partners, IT managers/staff, to ensure best possible software design and implementation.
- Advance our investment in Java and React that enables implementation and operation to realize reliability, scalability and performance across our systems and processes.
- Build Interactive systems that works great on various browsers, screen sizes and tablets/phones.
- Key member of a small, but strong team working on company's core applications.
- Participate in all parts of SDLC, including design, development, documentation, testing and supporting production.
- Provide hands on development and mentoring to junior members of the development team.
- Ability to delegate and get full productivity from development team.
- Ability to work on many projects in various stages concurrently.
- Analyze, challenge and support architecture proposals and decisions for technical solutions along
- Comply with all company policies and procedures.
- Maintain regular and punctual attendance.
Other Job Duties and Responsibilities:
Performs other related duties as assigned.
Supervisory Responsibilities:
This position is an individual contributor leading team(s) with no direct reports.
Qualifications:
To perform this job successfully, an individual must be able to perform each essential function satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required.
Education and/or Experience:
- Bachelor of Science or Bachelor of Arts degree in Computer Technology, Informatics, Computer Science, Engineering or Business or equivalent experience.
- Eight (8) to ten (10) years' experience with end-to-end design of J2EE applications.
- Eight (8) to ten (10) years Expert Knowledge and Experience of React.
- Three (3) years' experience with Cloud Technologies such as AWS S3, EKS, and/or ECS.
- Three (3) years' experience with CI/CD solutions such as Github Actions
- Three (3) years' experience with relational data bases such Oracle; Proficient in SQL.
- Three (3) years' experience with document-oriented databases such as MongoDB.
- Experience with Java, Spring / Boot, XML and Rest Services.
- Experience with Infrastructure as Code (IAC) such as Terraform.
- Hands on experience on ReactJS native applications or native base applications.
- Knowledge and Experience of State based design and implementation.
- Understanding of building, publishing and using NPM modules.
- Commanding grasp of HTML 5, JaveScript/TypeScript, CSS and related web technology.
- Familiarity with NodeJS, ExpressJS and general Mean stack development.
- Work with an advanced collection of APIs and tools already in place.
- Demonstrate design and UX sensibility.
- Experience with Agile methodology and Scrum team.
- Possess a positive, can-do attitude and enjoy making a difference in the business through your technical contributions.
- Ability to think creatively, stimulate new ideas and challenge existing thinking.
- Master's Degree and two years of experience will be accepted in lieu of the above.
Certificates, Licenses, Registrations :
None Required