This project sits at the intersection of computer vision and classical data engineering.
We are building a computer-vision system that cross-checks large industrial scan imagery against structured records, and flags inconsistencies for human review.
What we need:
- Strong Python + PyTorch; solid classical CV fundamentals (not only deep learning — image preprocessing, segmentation, working with 16-bit scientific imagery)
- Hands-on experience training and fine-tuning modern vision models (detection, self-supervised backbones, anomaly detection)
- Comfort building the whole pipeline solo: data ingestion, PostgreSQL, feature engineering, training, evaluation, serving
- Rigorous evaluation habits — you know why a good benchmark number can lie, and how to design tests that don't
- Pragmatic mindset: happy to ship simple statistical baselines before reaching for a bigger model
Nice to have: medical/industrial/scientific imaging background, on-prem or edge deployment experience, semi-supervised or weak-label training experience.
More details about preferable stack:
Core: Python 3.11+, NumPy/SciPy, scikit-image + OpenCV (preprocessing), pydicom/DICOS reader if raw is DICOS, PyTorch + timm + transformers, albumentations, POT (optimal transport), scikit-learn (fusion, calibration), pycocotools.
Data: Postgres 16 + pgvector, partitioned by month; Parquet for feature tables; DuckDB for analysis over Parquet (fast, no server); DVC or LakeFS for image/dataset versioning; Alembic for migrations.
Orchestration & tracking: Prefect or Dagster for pipelines, MLflow for experiments, FastAPI + a Redis/RQ worker for serving.