Job Description

We are seeking a highly motivated and skilled Software Engineer to join our team. The ideal candidate will have a strong foundation in software development, machine learning, MLOps, Big Data Engineering, and building large-scale, distributed, and real-time systems. You will work in a collaborative environment to develop and maintain platform software, machine learning models, MLOps pipelines, and high-performance, scalable systems.

Responsibilities :

- Work on the design, development, and deployment of machine learning models, algorithms, and pipelines into production environments.

- Build and manage MLOps platforms for automating and scaling machine learning workflows, from model development to deployment and monitoring.

- Work on the creation and maintenance of scalable, distributed, and real-time systems that support large-scale machine learning applications.

- Utilize object-oriented programming (OOP) principles or established design patterns to build clean, modular, and maintainable code.

- Develop and optimize cloud native applications and services.

- Design and implement solutions using SQL and NoSQL databases, ensuring efficient and optimized data access.

- Build and maintain real-time systems capable of handling high-throughput, low-latency workloads.

- Develop, deploy, and maintain distributed systems that can scale to handle large amounts of data and traffic.

- Implement robust CICD pipelines to streamline model deployment, testing, and version control for ML and software applications.

- Ensure software engineering best practices across the SDLC lifecycle, including code quality, review, documentation, testing, and maintenance.

- Collaborate with cross-functional teams to define and deliver machine learning and system engineering solutions.

Requirements :

- Bachelor's degree in computer science, Engineering, Mathematics, or a related field.

- Proven experience in developing machine learning systems and MLOps pipelines.

- Strong proficiency in Python, with the ability to write clean, efficient, and scalable code.

- Deep understanding and application of Object-Oriented Programming (OOP) concepts in software development.

- Experience working with at least one of the following languages : Java, Golang, Rust, or C++.

- Experience with both SQL and NoSQL databases (e. g., PostgreSQL, MySQL, MongoDB, Cassandra, etc. ).

- Hands-on experience with Cloud Technologies (AWS, Google Cloud, Azure, etc. ) and distributed computing frameworks.

- Familiarity with distributed systems and designing solutions for fault tolerance, scalability, and high availability.

- Proven experience working on large-scale systems and handling real-time data processing and system requirements.

- Familiarity with containerization and orchestration tools (Docker, Kubernetes).

- Understanding of CI/CD (Continuous Integration/Continuous Deployment) and SDLC (Software Development Lifecycle) processes.

- Strong knowledge of software engineering best practices, including version control, code reviews, unit testing, and documentation.

- Excellent problem-solving, analytical, and debugging skills.

- Ability to work effectively in a team-oriented, fast-paced, and collaborative environment.


info-icon

Did you find something suspicious?