Scala Engineer
We are seeking a highly skilled and motivated Scala Developers and DevOps Engineers Consultant to join our team on a project basis. In this could be a dual role, or separate to two different roles you will play a critical part in optimizing our legacy telemetry transit code, improving our AWS infrastructure, and helping us establish best practices for software development, testing, and deployment.
Key Responsibilities:
Scala Development:
- Collaborate with the development team to enhance and maintain our legacy telemetry transit code written in Scala.
- Optimize existing code for high performance, scalability, and reliability.
- Work on code migration efforts, identifying opportunities to migrate components to Node.js when appropriate.
- Develop thorough Scala testing suites to ensure code quality and reliability.
DevOps and Infrastructure:
- Architect and implement CI/CD pipelines to automate the deployment process.
- Set up and manage staging environments for testing and validation.
- Optimize AWS infrastructure for cost efficiency, performance, and security.
- Establish guardrails and best practices for development and infrastructure management.
- Ensure developer's local setup is efficient and standardized.
Monitoring and Analytics:
- Implement monitoring and logging solutions to gain insights into system performance and troubleshoot issues.
- Create dashboards and alerts to track application and infrastructure metrics.
- Work closely with the team to analyze data and identify areas for improvement and optimization.
Collaboration and Documentation:
- Collaborate with cross-functional teams to gather requirements and ensure alignment with business goals.
- Document processes, procedures, and infrastructure configurations.
- Mentor team members in best practices for Scala development and DevOps.
Qualifications:
- Strong proficiency in Scala programming language and experience with high-performance data processing.
- Demonstrated expertise in DevOps practices, AWS infrastructure, and CI/CD pipeline setup.
- Hands-on experience with monitoring and logging tools with modern tools and legacy systems.
- Familiarity with Docker and container orchestration (e.g., Kubernetes).
- Proficiency in scripting languages (e.g., Bash, Python) for automation tasks.
- Knowledge of Node.js and the ability to assess code for migration opportunities.
- Experience with Scala testing frameworks (e.g., ScalaTest) and test-driven development (TDD) principles.
- Strong problem-solving skills and the ability to work in a collaborative team environment.
- Excellent communication skills and the ability to document processes effectively.
Preferred Qualifications:
- AWS certification (e.g., AWS Certified DevOps Engineer, AWS Certified Solutions Architect).
- Experience with serverless computing (e.g., AWS Lambda).
- Familiarity with infrastructure as code (IaC) tools such as Terraform or AWS CloudFormation.
- Knowledge of microservices architecture and best practices.
- Previous experience working with legacy codebases and refactoring efforts.