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
- Hands-on practical experience in system design, application development, testing, and operational stability
- Experience in developing, debugging, and maintaining code in a more modern programming languages and database querying languages, Java, and JavaScript and Node
- Demonstrable ability to code in one or more languages, Java, React, JavaScript and Docker/Kubernetes or containerization in general, Large dataset manipulation, Microservices architecture, Component Systems, Datadog, Sentry, Webpack, Ransack
- Exposure to agile methodologies such as CI/CD, Application Resiliency, and Security
- Writing comprehensive unit tests for all production code
- Object-oriented or functional programming paradigms
Preferred qualifications, capabilities, and skills
- Familiarity with modern front-end technologies
- Exposure to cloud technologies
- Participate in the full software development lifecycle including design, development, testing, deployment, and maintenance
- Continuously improve development processes and stay up to date with emerging trends and best practices