Software Engineer II
Description
Software Engineer II designs, develops, tests, and debugs software applications, contributes to software builds, completes code reviews and automated testing to maintain high-quality standards with guidance, supports and monitors software across environments, and adheres to security and regulatory best practices.
- Designs, develops, tests, and debugs software applications and systems
- Completes software builds through consistent development practices, including the use of tools, common components, and documentation with guidance from peers and leaders
- Completes code reviews and automated testing to maintain high-quality code standards with guidance from peers and leaders
- Supports and monitors software across test, integration, and production environments
- Adheres to security and regulatory best practices to ensure software compliance
- Collaborates and co-creates effectively with teams in product and the business to align technology initiatives with business objectives
Education Qualifications:
- Bachelor’s degree in Computer Science, Computer Engineering, and/or comparable experience
- Knowledge of distributed (multi-tiered) systems, algorithms, NoSQL and relational databases
- Knowledge of the core tools used in the planning, analyzing, crafting, building, testing, configuring, and maintaining of assigned application(s)
Work Experience:
- 4+ years of development experience with Java (minimum Java 11)
- 2+ years of development experience with Web Technologies (HTML, CSS, JavaScript, React, Next.js etc.)
- Software engineering and development experience or a related job
- Experience in application design, software development, and automated testing
- Experience in object-oriented design and coding with variety of languages
- Experience in distributed (multi-tiered) systems, algorithms, and relational databases
- Demonstrated experience with object-oriented design and coding with variety of languages and proven ability to understand and use complex data structures and associated components.
- Must be willing and able to express new ideas, concerns, and opinions directly to wider team including tech and business partners in team meetings in person or video/tele conferencing.
- Must have experience of writing applications for deployment on cloud environment including OpenShift and Docker containers.
- Must have experience with performance and monitoring tools e.g., Splunk, Dynatrace, ELK Analytical skills and knack of looking for non-obvious solutions.
- Knowledge CI/CD, system testing, test automation. Experience in infrastructure, application monitoring, platform stabilization and Investment performance a plus.
- Knowledge of distributed (multi-tiered) systems, algorithms, NoSQL and relational databases
- Knowledge of the core tools used in the planning, analyzing, crafting, building, testing, configuring, and maintaining of assigned application(s)
- Nice to have:
- Python experience is nice to have.
- Any ML/AI experience is nice to have. Experience to train a model based on the large amounts of data available and perform experiments/POC based on latest AI technologies.