Job Summary
Senior Product Software Engineers are expert in their area. They work closely with the architect and team lead to implement new features, remove technical debt, and implement (and propose) best practices. They are highly productive/efficient and a critical, reliable team member with large expertise. They are aware of latest developments regarding coding language, infrastructure as code, automated tests, continuous development, etc.
They communicate difficult concepts and influence others to adopt a different point of view.
Essential Duties And Responsibilities
Contributes at senior level to the products in scope.
- Assess opportunities for application and process improvement and prepare documentation of rationale to share with team members and other affected parties.
- Adhere to high-quality development principles while delivering solutions on-time and on-budget.
- Implement features according to the product owner's specification
- Making sure stories are in line with DoR and DoD
- Expected outcomes (accountability)
- Solid contribution to feature implementation, driving force.
- Development process in line with CI/CD, as much automation as possible
- Effort estimations for new features
- Conducts (root-cause) analysis and resolves incidents/bugs by developing a work-around
- Performs structural modifications to the product and solution code and architecture
- Can take the following decisions:
- Coding standards, together with team leads and architect
Design, execute and report on development of products in scope
- Collaborate with other software developers, QA engineers, product owners and software architects to plan, design, develop, test, and maintain business applications.
- Assist in the collection and documentation of user's requirements, estimate and work plans.
- Design and implement features according to define use cases. Deliver non-functional test campaigns, report results, indicate areas of improvement to the engineering teams.
- Troubleshooting defects and create solution to decrease the maintenance pipe.
- Review pull request of the team and give recommendation to improve code quality and best practice.
- Expected outcomes (accountability)
- Features develop on-time and on-budget
Job Qualifications
Other Knowledge, Skills, Abilities or Certifications:
- Bachelor of Computer Science, with multiple development specialty or experience; or solid professional track record in software development.
- 5+ years of experience as a software developer
- Full stack/Back-end/Front-end developer skills as appropriate. Tech stack: GIT, Azure DevOps, .Net Core (back-end and full stack), React JS (front-end and full stack). EHS products specific: scripting languages (powershell, etc.), SQL Server, refactoring of a monolith
- Hands-on experience and knowledge of the standard tools for Continuous Integrations and dashboards in the software industry, and can program / automate with proficiency in at least scripting languages (powershell, etc.)
- Has in-depth knowledge of most, if not all, operational processes of many customers, link to the solution as well as architectural, testing and implementation implications
- Owns the technical initiatives of a product, large component or module incl. the (tech) roadmap and/or technically leads the development of a product, component or module
- Experience with SQL Server, REST API, Solid Principles, Microservices, Docker, TDD
- The ability to work independently while maintaining focus on achieving optimal outcomes as part of a collaborative development effort. A can-do person with a constructive mindset, a team player
- Work within Agile processes
The above statements are intended to describe the general nature and level of work being performed by most people assigned to this job. They are not intended to be an exhaustive list of all duties and responsibilities and requirements.