Job responsibilities
- Regularly provides technical guidance and direction to support the business and its technical teams, contractors, and vendors
- Develops secure and high-quality production code, and reviews and debugs code written by others
- Drives decisions that influence the product design, application functionality, and technical operations and processes
- Serves as a function-wide subject matter expert in one or more areas of focus
- Actively contributes to the engineering community as an advocate of firmwide frameworks, tools, and practices of the Software Development Life Cycle
- Influences peers and project decision-makers to consider the use and application of leading-edge technologies
- Adds to the team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years applied experience.
- Have excellent programming experience in Core Java
- Practice TDD and BDD engineering techniques
- Have an understanding of java IOC frameworks such as Spring or Guice
- Understand next generation messaging and streaming technologies such as Kafka, Solace or Ignite
- Above average database fundamentals – can write complex queries, understands how to organize data , able to troubleshoot for performance.
- Overall knowledge of the Software Development Life Cycle
- Solid understanding of agile methodologies such as CI/CD, Application Resiliency, and Security
- Demonstrated knowledge of software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
Preferred qualifications, capabilities, and skills
- Familiarity with modern front-end technologies
- Exposure to cloud technologies