Software Developer
Role details
Job location
Tech stack
Job description
We are seeking a Software Developer to join a high-performing engineering team responsible for building scalable, distributed software applications that support modern IT infrastructure environments. This role focuses on designing and developing microservices-based applications, building containerized solutions, and contributing to CI/CD-driven DevOps workflows. The ideal candidate is passionate about modern software development, thrives in Agile environments, and enjoys solving complex technical challenges while collaborating with cross-functional teams., * Design, develop, and maintain multi-tier distributed software applications and microservices architectures.
- Collaborate with software architects and design teams to implement scalable system designs and technical solutions.
- Build and maintain containerized applications using Docker and related container technologies.
- Develop services using modern programming languages such as Go, Python, and C++.
- Implement and support CI/CD pipelines, version control workflows, and automated deployment processes.
- Contribute to code reviews, unit testing, and end-to-end testing to ensure high-quality, reliable software.
- Work within an Agile development environment, participating in sprint planning, standups, and retrospectives.
- Develop APIs and service communication using gRPC and Protocol Buffers.
- Write efficient, maintainable code that supports high availability and scalable systems.
- Collaborate with cross-functional teams including DevOps, QA, and infrastructure engineers to deliver production-ready solutions.
Requirements
- Bachelor's degree in computer science, Information Systems, or related technical field.
- 3+ years of professional software development experience.
- Experience with Go, Python, C++, or similar programming languages.
- Experience building microservices and distributed systems.
- Strong experience working with Linux environments and networking fundamentals.
- Experience with Git-based version control platforms (GitHub or GitLab).
- Understanding of CI/CD pipelines, DevOps practices, and automated deployment.
- Experience with Bash or shell scripting.
- Familiarity with Agile/Scrum development methodologies.
- Strong understanding of object-oriented programming and software design principles.
Preferred Qualifications:
- Experience with PostgreSQL and NoSQL databases such as Redis.
- Experience with containerization technologies including Docker, Docker Compose, and Docker Swarm.
- Knowledge of gRPC, Protocol Buffers, and API development.
- Experience developing Angular applications or modern web interfaces.
- Familiarity with unit testing frameworks and automated testing practices.
- Understanding of multithreading, concurrency design patterns, thread safety, and deadlock prevention.
- Experience working with JSON processing and RESTful services.
- Exposure to data center infrastructure or IT infrastructure platforms is a plus.
- Experience using Visual Studio Code, WebStorm, or similar IDEs.