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
- Gathers, analyzes, and draws conclusions from large, diverse data sets to identify problems and contribute to decision-making in service of secure, stable application development
- 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
- Formal training or certification on software engineering concepts and 2+ years applied experience
- Practical experience in full-stack application development, testing, deployment and monitoring.
- Ability to code in back-end programming languages (Java).
- Ability to use source control tools like GIT.
- Ability to use tools and frameworks (Testing Library, Mockito, Cucumber, Junit or similar)
- Exposure to agile methodologies like Scrum or Kanban
- Experience with any CI/CD tools, secure software development practices, and resilient application development
- Emerging 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
- Experience using one or more UI development frameworks (React or similar)
- Knowledge of testing tools and frameworks (Cypress, Jest or similar)
- Exposure to cloud technologies (Cloud Foundry, AWS, Terraform or similar)