The Software Engineer is responsible for development implementation and maintenance of software solutions. The role includes working on Front-end and back-end systems. The main duties include understanding user requirements translating them to Front/Back End code developing database objects and APIs.
The candidate will provide analysis design coding debugging testing and support of software applications.
- Works with the Agile Program Manager (APM) Digital Product Manager (DPM) and Business Systems Analyst (BSA) to accurately capture stakeholder requests and system specifications and translate them into engineering artifacts which typically include design specifications source code test scripts and test results.
- Coordinates with software architects and Software engineer IVs to ensure that the engineering realization is in accordance with Enterprise Architecture principles and software development best practices.
- As part of Agile teams completes software development work which includes application design coding code review and testing. Keeps Agile team and APM apprised of project status.
- Offers suggestions to stakeholders on devising effective and efficient approaches to achieve project and program objectives.
- Manages engineering risks by proactively tracking and communicating issues and devising methods to mitigating them.
- Liaises with other project and program areas to coordinate interdependencies and resolve issues.
- Supports business units in the resolution of in-depth user questions and issues following production support process and SLAs.
- Maintains a working knowledge of new technology and software engineering standards practices and tools.
- Provides input to APM/DPM in creation of Product Roadmap High Level Estimates
Collaborates with IT management to define and develop documentation & engineering artifact standards guidelines processes and templates
Qualifications :
- Excellent analytical problem solving and organizational skills.
- Ability to learn new business concepts and technology.
- Ability to understand data modeling (conceptual logical and physical) and database design concepts.
- Knowledge and experience using agile software development principles process and tools.
- Development Experience with Java MSSQL Angular JavaScript HTML CSS
- Experienced in scalable high-availability back-end technologies Oracle SQL Server and PostgreSQL
- Experience with non-relational database technologies preferred such as Memcached MongoDB Redis
- Strong JavaScript back-end development experience with common frameworks Angular Rxjs Node etc...
- Front end development experience including ReactJS Webpack HTML5 CSS Bootstrap jQuery Accessibility and Responsive Layouts UI/UX development experience.
- DevOps experience preferably with GitHub Actions Helm charts ArgoCD leveraging GitHub Flow for CI and GitOps for CD
- Utilize DevOps and configuration management process and tools for Continuous Integration / Continuous Delivery and Testing
- Strong customer service skills to provide end user/business owner systems support.
- Excellent communication skills:
- Ability clearly speak and understand the English language.
- Excellent command of the English language i.e. Ability to write and understand the written documents email and other forms of electronic communications.
- Ability to discuss articulate and simplify technology to non-technical people.
- Strong knowledge of SQL and experience with database management systems.
- Proficiency in object-oriented programming and design patterns.
- Understanding of software engineering principles and best practices including SOLID principles.
- Azure experience a plus: Experience in deploying Web Apps and API on Azure workloads using Azure Web App App Service Plan or Azure Kubernetes service.
- Knowledgeable in reporting tools like PowerBI SSRS etc
- Experience in Insurance/Reinsurance domains will be an added bonus
- Knowledge of the Open Systems Interconnection (OSI) model and network protocols.
- Familiarity with Agile development methodologies.
- Experience with test-driven development (TDD) and continuous integration/continuous deployment (CI/CD) pipelines.
Additional Information :
- Required knowledge & skills would typically be acquired through a bachelors degree in computer science or related field.
- Experienced developers with at least 3-5 years in software development
Remote Work :
Yes
Employment Type :
Full-time