Job responsibilities
- Executes standard software solutions, design, development, and technical troubleshooting
- Writes secure and high-quality code using the syntax of at least one programming language with limited guidance
- Designs, develops, codes, and troubleshoots with consideration of upstream and downstream systems and technical implications
- Applies knowledge of tools within the Software Development Life Cycle toolchain to improve the value realized by automation
- Applies technical troubleshooting to break down solutions and solve technical problems of basic complexity
- Learns and applies system processes, methodologies, and skills for the development of secure, stable code and systems
- Adds to team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
- Bachelor's degree in Computer Science or equivalent
- Formal training or certification on software engineering concepts and 2+ years applied experience
- Hands-on practical experience in system design, application development, testing, and operational stability
- Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
- Experience across the whole Software Development Life Cycle
- Exposure to agile methodologies such as CI/CD, Application Resiliency, and Security
- Emerging knowledge of software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
- Experience in developing microservices using Java 8+, Spring Boot, REST, SQL, React JS, Angular JS.
- Good knowledge of TDD, BDD and Unit testing techniques using frameworks like Junit / Mockito with strong focus on automated testing
- Good understanding of DevOps tools: source code control software (Git), build automation (Maven), continuous integration (Jenkins)
Preferred qualifications, capabilities, and skills
- Familiarity with modern front-end technologies
- Exposure to messaging systems like MQ/Kafka
- Exposure to cloud technologies (Kubernetes preferred)