About the Company
A digital platform operating in the sports and coaching sector is seeking a Senior Backend Developer to join its technical team. The platform supports a large community of users by providing tools designed to help them train, improve their performance, and achieve their goals.
About the Role
The Senior Backend Developer will be responsible for maintaining and developing the core backend system built in Scala, as well as existing Scala and Python microservices. The role involves reviewing and refactoring existing code, maintaining current functionality, and developing new features in collaboration with product, backend, and frontend teams.
This is a permanent remote position.
Responsibilities
- Take ownership of existing backend API functionality supporting web and mobile applications.
- Maintain and enhance backend APIs.
- Evaluate the architecture of backend services and recommend improvements when necessary.
- Review the architecture of existing Scala and Python microservices.
- Refactor existing services and deploy new microservices when required.
- Collaborate with product, backend, and frontend teams on feature development and technical improvements.
Requirements
- 3+ years of experience as a Backend Developer, Software Engineer, or in a similar role.
Technical Skills
- Strong expertise in Scala and Java.
- Experience with functional programming in Scala.
- Experience with Akka and Play frameworks.
- Knowledge of performance optimization techniques.
- Experience with concurrent and asynchronous programming.
- Experience with CI/CD processes.
- Experience with observability practices.
- Proficient use of Git and GitHub.
- Strong knowledge of databases and database performance optimization.
Nice to Have
- Ability to work independently and identify solutions with minimal supervision.
- Strong organizational skills and proactive approach to problem-solving.
- Ability to work effectively in a remote environment and communicate clearly through written communication.
- Ability to manage multiple topics and priorities simultaneously.
- Initiative to propose technical and functional improvements.
- Ability to anticipate issues and implement proactive solutions.
- Interest in identifying optimization and innovation opportunities within existing architectures.
