JOB SUMMARY
We are seeking a Principal Software Engineer who will be responsible for understanding requirements, business cases, and user stories to design, develop, and test applications that meet acceptance criteria. The ideal candidate will have a strong background in computer science, engineering, and mathematical analysis, with proficiency in one or more software or scripting languages. Tasks may include developing new applications or enhancing existing ones, with a focus on delivering efficient and effective software engineering solutions.
ESSENTIAL FUNCTIONS /MAJOR JOB RESPONSIBILITIES
- Acts as Liaison with Business Analysts and/or internal/external clients to ensure that requirements are understood
- Produces and executes unit test cases as defined by the team
- Maintains coding standards
- Produces supporting technical and installation documentation for internal and external publication as appropriate
- Achieves productivity targets to ensure deliverables are met within budget, on schedule and defined quality standards
- Completes all necessary software and non-software components in the timelines as defined by the Scrum Team/Project Manager
- Produces technical specifications, code and/or unit test plans in line with the traceability matrix/functional specification
- Reviews and approves technical design specifications
- Develops and maintains development standards to be followed by team
- Researches and proposes relevant emerging technologies to develop technical edge for the product
- Plays the role of technical lead
- Acts as a specialist on complex technical areas
JOB REQUIREMENTS
Education
- Bachelor's Degree in Computer Science preferred
Licenses/Certifications
- Azure (or equivalent) Development Certification preferred
- Appropriate SAFe certification preferred
Experience
- 10+ years relevant work experience; 2-3 years at the Expert level or equivalent experience.
Knowledge, Skills and Abilities
- Experience with the following technologies: ASP.NET Web Forms, ASP.NET MVC, ASP.NET Core, Entity Framework, C#, SQL Server, JavaScript, HTML/CSS, Blazor, Visual Studio, Git, Azure DevOps, Docker, Kubernetes
Required Skills
- Software Development: Deep understanding and application of computer science, engineering, and mathematical analysis to design, develop, and test applications. Proficiency in one or more software or scripting languages.
- Requirement Analysis: Ability to act as a liaison with Business Analysts and/or clients to ensure requirements are thoroughly understood and met.
- Coding Standards and Documentation: Maintains coding standards and produces supporting technical and installation documentation for internal and external use.
- Project Delivery: Achieves productivity targets to ensure deliverables are met within budget, on schedule, and according to defined quality standards.
- Technical Specifications: Ability to produce technical specifications, code, and/or unit test plans aligned with the traceability matrix or functional specification.
- Technical Leadership: Acts as a technical lead and specialist in complex technical areas, guiding less experienced team members
Preferred Skills
- Technical Design Review: Skills in reviewing and approving technical design specifications.
- Development Standards: Develops and maintains development standards to be followed by the team.
- Emerging Technologies: Researches and proposes relevant emerging technologies to develop a technical edge for the product.
- Global and Cultural Awareness: Ability to work effectively with teams across various countries (US, IN, AU, IL, SG, CA, UK) and understand diverse cultural dynamics.
- ASP.NET Technologies: Experience in building applications using ASP.NET frameworks.
- MS SQL Server: Proficiency in managing databases and performing complex queries in MS SQL Server.
- Angular: Experience in developing dynamic and responsive web applications using Angular.
- Azure Technologies: Knowledge of deploying and managing applications and services on the Azure cloud platform