Description
We're looking for an exceedingly talented Technologist to work as part of the Risk Engineering development team. As a Technologist in the team, you’ll be responsible for the technical direction of our Risk Products, ensuring that we are using appropriate technologies and helping drive initiatives to bring customer value and efficiency in operation.
Main Responsibilities / Accountabilities
- Design, build, and maintain software systems based on business requirements
- Develop software using disciplined software development processes, adhering to team/company standards and software best practice guidelines, and corporate policies.
- Lead group of engineers working with the delivery lead and management to coordinate and deliver larger developments.
- Ensure that there is a focus on software quality through effective testing, doing what is necessary to provide a framework for teams to understand the quality of our developments.
- Work closely with the QA team to ensure that code is developed to a high quality, evidenced through automated testing.
- Leading the design of components, ensuring that they adhere to the application architecture
- Provide technical support to operations or other development teams
- Create, review, and maintain all required technical documentation to ensure supportability and reuse
- Review work of peers and the team.
- Assist with improvements to prevent problems, including problem resolution workflow.
- Participate in project planning sessions with team members to analyze development requirements, provide design options, and provide work breakdown and estimates of work.
- Actively participate in team and status meetings, providing timely status updates for areas of individual responsibilities within projects to supervisor
Key Relationships
- Sr Management
- Architects
- Scrum Master
- Development and QA Team
Essential Skills/Experience Required
- 15+ years of experience on working and managing Java based projects.
- Core Java language, J2EE, Spring framework, data structures, multi-threading and exception handling
- Experience of developing for the AWS Cloud
- VueJS, React, Node for building dynamic user interfaces is an added advantage.
- Working with relational databases - PostgreSQL/MySQL with proficiency in data-modelling, SQL, ORM, JPA, etc.
- Proficient understanding of cross-browser compatibility issues and ways to work around such issues
- Familiar with various design patterns
- Experience of unit testing
- Solid understanding of security implications and secure coding
- Familiar with RESTful interfaces
- Familiarity with build tools, such as Maven, webpack etc
- Skill for writing clean, readable code and reusable components
- Proficient using source code management tools such as Git or SVN
- Experienced in a formal agile software development lifecycle
- Familiar with continuous build and integration
- Experience with Test Driven Development and / or Behavior Driven Development
- Self-starter - does what it takes to get the job done
- Excellent communication skills, verbal and written