Senior Machine Learning Engineer
Unifonic
WorldwideremotePosted 8 days ago
Skill Required
Machine-Learning-EngineeringAI-EngineeringNLP-EngineeringData-ScienceSoftware-EngineerSenior-ML-EngineeringRAG-EngineeringGenerative-AISenior-ML-EngineerSenior-AI-ML-EngineerSenior-Machine-Learning-Data-ScientistSenior-Machine-Learning-ScientistSenior-Data-Science-EngineerMachine Learning EngineerMachine Learningsoftware engineeringGenerative AIStatisticsdata engineeringData StructuresScikit-learnLangChainEngineeringTensorFlowKubernetesanalyticaldevelopingdesigningRabbitMQbuildingPyTorchTestNGPythonPandasDockerdesignAgileFlaskNumPyFulltime
Key highlights
- Unifonic share scheme (we are all owners!)
- 30 holiday days after the first anniversary
- Your Birthday off!
- Spend up to 25 days per year working from anywhere in the world
- Paid leave for new parents
- Competitive salary and bonus
Role overview
We are a dynamic SaaS startup voted a Great Place to Work®, revolutionizing business communication with a passionate team of 500 Unifones serving 5000+ customer-centric companies. Our Engineering team designs and maintains the systems driving Unifonic's solutions, and we are seeking a Senior Machine Learning (AI) Engineer to lead the end-to-end development and deployment of advanced machine learning solutions across NLP, RAG, LLMs, recommender engines, and anomaly detection.
Responsibilities
- Leading the end-to-end design, development, and deployment of robust and scalable machine learning solutions, with a strong emphasis on NLP and RAG architectures.
- Architecting and implementing RAG systems, combining large language models (LLMs) with robust retrieval mechanisms to improve the accuracy, factual grounding, and interpretability of generated content.
- Applying advanced NLP techniques for tasks such as text classification, entity recognition, sentiment analysis, summarization, question answering, and information extraction.
- Researching, evaluating, and integrating state-of-the-art NLP models and RAG frameworks (e.g., Transformers, BERT, GPT variants, Vector Databases, Semantic Search).
- Mentoring junior team members on the team, sharing knowledge, and advising the best machine learning and software engineering practices and approaches.
- Establishing and maintaining robust communication channels with other cross-functional teams to facilitate the integration of machine learning solutions into other Unifonic products.
- Developing and optimizing highly confident machine learning algorithms and models and creating/exposing the service APIs using frameworks such as Flask, FastAPIs, or other relevant frameworks.
- Staying up to date with the latest machine learning research papers, and AI trends (i.e. Generative AI).
- Collaborating with the data engineering team and other teams to collect and analyze extensive datasets, extracting insights and patterns, in real-time, near-real-time, or batch processing mode.
- Implementing proof of concepts and prototypes to demonstrate the potential of new AI use cases and innovations.
- Building scalable, maintainable machine learning services, which should handle thousands of requests per second, and help to perform the required load tests to meet the SLA.
- Reviewing the code of other team members and suggesting improvements to ensure the SOLID principles and clean architecture.
- Assisting in the project documentation and demos.
Requirements
- Proven experience designing and implementing RAG systems, including familiarity with various retrieval strategies (e.g., BM25, dense retrieval, hybrid approaches) and knowledge graph integration.
- Hands-on experience with LLM orchestration frameworks such as LangChain, LangGraph, CrewAI, or similar tools for building and managing autonomous agents.
- Deep expertise in various NLP techniques and models, including but not limited to: Transformer architectures (e.g., BERT, GPT, T5, LLama, Mistral); Large Language Models (LLMs) and their fine-tuning/adaptation; Vector embeddings and similarity search; Text classification, named entity recognition (NER), sentiment analysis, summarization, and question answering.
- Hands-on 3-5 years of relevant work experience as a Machine Learning Engineer.
- Hands-on 3+ years of experience with Python.
- Excellent analytical abilities, with the capacity to collect, organize, and analyze large datasets to glean valuable insights.
- End-to-end experience in training, evaluating, testing, and deploying machine learning products in production.
- Ability to write world-class code in Python (SOLID principles), considering the best software engineering fundamentals, i.e. data structures, algorithms, and data modeling.
- Solid experience in ML frameworks such as NumPy, Pandas, Scikit-Learn, PyTorch, Keras, BERT, Tensorflow, and similar.
- Familiarity with MLOps best practices, e.g. Model deployment and reproducible research.
- Mastering data science needed skills like SQL, hypothesis testing, Data cleansing, data augmentation, data pre-processing techniques, and dimensionality reduction.
- Familiar with code versioning tools such as GIT, CI/CD concepts, and toolchains.
- Familiar with Agile methodologies i.e. scrum and kanban.
- Ability to develop high-level architecture and low-level design, End-to-end for a specific project.
- General knowledge of Data warehouse tools e.g. Vertica is a plus.
- A Bachelor's degree in a relevant field. (e.g. Computer Science, Computer Engineering, Software, etc).
- Excellent communication and collaboration skills.
- Good level of spoken and written Arabic and English.
Nice to have
- Basic knowledge of Kubernetes and Docker is nice to have.
- Experience fine-tuning pre-trained models and using vector search to enhance LLMs results.
- Experience with the Hugging Face libraries (i.e. transformers).
- Experience with LLM frameworks (i.e. LangChain) and prompt engineering techniques.
- Experience in event sourcing patterns and tools i.e. Kafka, RabbitMQ, or similar is nice to have.
- Experience with LLM frameworks (i.e. LangChain) and prompt engineering techniques is nice to have.
- Experience in event sourcing patterns and tools i.e. Kafka, RabbitMQ, or similar is nice to have.
Benefits
- Competitive salary and bonus.
- Unifonic share scheme (we are all owners!).
- 30 holiday days after the first anniversary.
- Your Birthday off!
- Spend up to 25 days per year working from anywhere in the world!
- Paid leave for new parents.