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
- Gain hands-on practical experience in system design, application development, testing, and operational stability.
- Demonstrate the ability to code in one or more languages like Python/PySpark, with Scala
- Work with distributed computing frameworks such as Apache Spark/PySpark.
- Possess strong knowledge in SQL querying.
- Utilize AWS services such as EMR, EC2, Lambda, and S3,
- Understand machine learning concepts
- Experience the entire software development life cycle.
- Apply exposure to agile methodologies such as CI/CD, application resiliency, and security.
Preferred qualifications, capabilities, and skills
- Develop familiarity with big data technologies.
- Gain exposure to cloud technologies.
- Consider Scala, SNS, Athena, and Glue as a plus
- additional knowledge of SQS, SNS, Athena, and Glue being advantageous.