Point your AI agent at freehire and let it find you a job.

Get the CLI →

Senior Python Software Engineer

Discussion

About us
Farsight Vision converts flight footage into digital 2D and 3D twins for real-time intelligence in GNSS-denied environment, making analytics and situational awareness convenient and accessible while saving time and effort. We create multi-layered digital twins of terrain with dynamic tracking and object/landscape monitoring and predicting.
As a Senior Python Software Engineer, you will be a core part of our technology team, responsible for building and maintaining the backend infrastructure of the FSV Platform. You will work with cutting-edge technologies, including Python-based frameworks, cloud services, and machine learning operations (MLOps), to develop a platform that processes and analyzes drone data to create 3D models and orthophotos. Your role will involve not only backend development but also basic DevOps tasks and collaboration with frontend teams, making this a dynamic and versatile position.
If you thrive in startup environments, are proactive, and enjoy solving complex problems, this position offers an exciting opportunity to contribute to an innovative platform and grow alongside our ambitious team.
Responsibilities
Design and own backend services for the FSV Platform — API design, data models, and the pipelines behind orthophotos, 3D models and detections.
Architect and operate hybrid CPU/GPU workloads: queue, schedule and scale heavy processing jobs, keep throughput predictable and cost per job under control.
Deploy and run compute-heavy services in production, including ML models delivered by our ML team — packaging, versioning, monitoring, redeployment.
Work with the platform's cloud infrastructure, ensuring efficiency, scalability and reliability.
Use AI coding tools daily, and review, test and stand behind every line that ships. We judge output the same way regardless of whether a human or a model wrote it.
Evaluate new tools and protocols: run a small PoC, measure it, and bring the team a reasoned recommendation rather than a link to a hype thread.
Debug and improve a system that runs in the field, where degraded connectivity and GNSS-denied conditions are the normal operating mode, not an edge case.
Work closely with ML, frontend and field teams; occasionally pick up a frontend task when it unblocks delivery.
Requirements
5+ years in software development.
Strong Python (3+ years) with Django — this one is non-negotiable. Familiarity with Flask, FastAPI or Celery is a plus, but Django is what our platform runs on.
Experience architecting compute-heavy systems: splitting CPU and GPU work, orchestration and queueing (Celery, RabbitMQ, Kubernetes, Ray or similar), batching, and the trade-offs around GPU memory and throughput.
Solid AWS or equivalent, including GPU instances, large-media storage and cost control.
DevOps fundamentals: Docker, CI/CD, deploying and managing environments.
Daily work with AI assistants (Claude Code, Cursor, Copilot) and an explicit personal process for validating their output — tests, benchmarks, reading the actual docs or source. We will ask you to walk us through it.
A habit of following releases and new tooling, plus the judgment to separate what's worth adopting from noise. Be ready to name two things you started using in the last six months and why.
Basic React — able to assemble a simple project independently.
Experience in a fast-paced startup: ambiguous requirements, high ownership.
Nice to have
Experience deploying and maintaining ML models in production (inference services, model versioning, monitoring).
Geospatial / photogrammetry stack: GDAL, COG, tiling, point clouds.
CUDA, TensorRT, ONNX, model optimisation for constrained hardware.
Real-time video stream processing.
On-prem or edge deployment.
Defense tech or dual-use background.
Security Eligibility
Our platform is actively used by the Armed Forces in live operations. As an Estonian-Ukrainian defense technology company handling sensitive operational data, we have a responsibility — legal, ethical, and practical — to ensure the integrity of everyone on our team. All candidates must be able to confirm the following:
Neither you nor your close relatives (parents, spouse, siblings, children) reside in Russia, Belarus, or temporarily occupied Ukrainian territories
You have no regular personal, financial, business, or professional contact with individuals in those territories
You consent to a deeper security verification if the process advances to later stages
If any of the above criteria are not met, please do not proceed with your application.
Why us
With us, you will become part of a team of professionals who strive to contribute to the development of advanced technologies.
We value teamwork and create an atmosphere of mutual support where everyone can unleash their potential.
Flexible work schedule.
Paid vacation and sick days.
Hiring process
Technical Interview.
PM & C-level management Interview.

Skills

See also

Software Engineering jobs by country — openings, pay and top skills →

Tailor your CV for this role?

We couldn't check your fit for this role — add a CV to your profile to see it next time.

A new version of freehire is available