Principal Software Engineer
Anaplan View all jobs
- Gurgaon, Haryana
- Permanent
- Full-time
- Design, build, and maintain scalable and reliable machine learning services and APIs using Python.
- Develop and productionize ML models, taking them from prototype to scalable, live systems.
- Construct and manage the data pipelines required for model training, validation, and inference.
- Build and interact with databases (both SQL and NoSQL) to store and retrieve data for ML applications.
- Write clean, high-quality, and well-tested code, adhering to software engineering best practices.
- Collaborate with data scientists, AI architects, and other engineers to integrate ML models into our products.
- Optimize applications for speed, scalability, and reliability.
- Contribute to our MLOps infrastructure to streamline the deployment and monitoring of machine learning models.
- Expert Python Programming: Strong, hands-on proficiency in Python for software development.
- Backend & API Development: Proven experience building and deploying backend services and RESTful APIs using frameworks like Flask, FastAPI, or Django.
- Database Proficiency: Solid experience with both SQL (e.g., PostgreSQL) and NoSQL (e.g., MongoDB, Redis) databases, including data modeling and query optimization.
- Machine Learning Libraries: Deep, practical knowledge of the core Python ML ecosystem:
- Data manipulation and analysis: Pandas, NumPy.
- Core ML frameworks: scikit-learn.
- Deep learning frameworks: Experience with TensorFlow or PyTorch.
- Strong understanding of software engineering principles, including data structures, algorithms, and design patterns.
- Experience with version control (Git) and CI/CD practices.
- Excellent problem-solving skills and the ability to write efficient, production-ready code.
- Bachelor's or Master's degree in Computer Science, Engineering, or a related field.
- Experience with cloud platforms (AWS, Azure, or GCP) and their ML services.
- Familiarity with containerization technologies like Docker and orchestration with Kubernetes.
- Experience with MLOps tools and principles (e.g., MLflow, Kubeflow).
- Knowledge of large-scale data processing frameworks like Spark or Dask.
- Extend offers to candidates without an extensive interview process with a member of our recruitment team and a hiring manager via video or in person.
- Send job offers via email. All offers are first extended verbally by a member of our internal recruitment team whenever possible and then followed up via written communication.