We are seeking a Machine Learning Engineer with 1 to 2 years of experience in building production machine learning systems, particularly with a strong focus on computer vision, to join our AI/ML team. In this role, you will develop a computer vision pipeline that automatically extracts structured digital data from scanned images. The work involves image preprocessing, layout and text detection, segmentation, algorithmic post-processing, and data export. The goal is to deliver accurate and reliable results despite real-world, imperfect inputs. The ideal candidate has a solid foundation in Python and deep learning for computer vision, enjoys tackling open-ended problems, and can translate machine learning concepts into reliable, modular, and scalable software solutions.
Key Responsibilities
- Design, build, and deploy an end-to-end computer vision pipeline that extracts structured data from scanned images, covering preprocessing, layout detection, OCR for text and scale reading, segmentation, post-processing, and data export.
- Train and fine-tune deep learning models for image segmentation, detection, and classification, including models such as U-Net, SAM-based, or other instance segmentation architectures.
- Prepare, annotate, augment, and generate image datasets, including synthetic data, to support model training and evaluation.
- Develop image processing and algorithmic post-processing techniques, such as dynamic programming, tracking, and graph-based methods, to convert model outputs into precise structured results.
- Apply supervised, unsupervised, and self-supervised learning methods for feature extraction, quality estimation, and continuous model improvement.
- Evaluate models on real, hand-verified samples using task-specific accuracy metrics alongside IoU and Dice coefficients, optimizing for accuracy, performance, and latency.
- Write clean, modular, and well-tested code, contributing to deployment, monitoring, and model versioning processes.
- Collaborate closely with engineers and domain experts to define requirements, identify edge cases, and establish quality checks.
Required Qualifications
- Strong proficiency in Python programming and solid understanding of software development principles, including object-oriented programming, testing, and version control (Git).
- Hands-on experience training deep learning models for computer vision using PyTorch and/or TensorFlow, with a focus on segmentation or detection tasks.
- Good grasp of image processing fundamentals using tools like OpenCV and scikit-image, including techniques such as deskewing, thresholding, morphology, and geometric transformations.
- Experience in data preparation, augmentation, and evaluation tailored for computer vision models.
- Ability to integrate learned models with algorithmic post-processing within a multi-stage pipeline.
- Experience developing and deploying production-level machine learning systems, with familiarity in basic MLOps practices.
- Strong analytical thinking, problem-solving capabilities, and eagerness to learn.
Preferred Qualifications
- Experience with Optical Character Recognition (OCR) tools such as PaddleOCR, Tesseract, or TrOCR, or working with vision-language models.
- Familiarity with instance segmentation or thin-structure segmentation techniques.
- Knowledge of synthetic data generation or generative models like GANs and diffusion models.
- Experience with active learning, uncertainty estimation, or tracking algorithms.
- Skills in handling large images through tiling and optimizing GPU training workflows.
Experience
- Minimum of 1 to 2 years of experience developing and deploying production-level machine learning algorithms.
- Preferred experience includes deep learning-based image segmentation (e.g., U-Net) and building computer vision pipelines.
Education
- Bachelor’s degree in Computer Science is required.
- A Master’s degree in AI/ML, Computer Science, Data Science, or a related field is preferred.
Location
- This position is based in Islamabad and requires on-site presence.