Python Software Engineer — AI/ML Integration & AI Agents

Remote
Full Time
Mid Level

About the Role

We are looking for a Python Software Engineer to join our engineering team and work at the intersection of software development, machine learning, and embedded systems.

The primary focus of this role is integrating machine learning and neural network models developed by our ML Engineers into production products, as well as developing AI agents, backend services, APIs, and integration layers for internal and external systems.

Most of our products run on embedded Linux-based devices, so the role requires a practical engineering mindset with attention to performance, reliability, resource constraints, and deployment.

This is primarily a software engineering role, not a model research or Data Scientist position.


Location

This is a full-time, hybrid role based in Tallinn, Estonia. Help with relocation possible. 

Responsibilities

  • Integrate ML and neural network models developed by ML Engineers into production applications.
  • Build and maintain Python-based inference pipelines and services.
  • Develop software components that connect ML models with existing product functionality.
  • Develop AI agents and agent-based workflows, including tool calling, external services, and APIs.
  • Design and implement REST APIs / integration APIs for external products and services.
  • Develop software for embedded Linux environments.
  • Optimize inference and application code for devices with limited CPU, memory, storage, or other hardware constraints.
  • Integrate Python applications with system services, hardware interfaces, databases, message brokers, and external APIs.
  • Work with ML Engineers to define model input/output contracts and production inference interfaces.
  • Package and deploy applications and ML components.
  • Implement logging, monitoring, error handling, and diagnostics.
  • Write unit and integration tests.
  • Troubleshoot issues across application, ML inference, operating system, network, and deployment layers.
  • Participate in architecture and technical design discussions.
  • Maintain technical documentation for implemented components and integrations.


Required Skills

  • Strong knowledge of Python and practical experience developing production software.
  • Good understanding of software engineering principles and application architecture.
  • Experience building REST APIs and backend services, preferably using frameworks such as FastAPI, Flask, or similar.
  • Experience working with Linux.
  • Understanding of processes, networking, filesystems, permissions, services, and Linux command-line tools.
  • Experience integrating third-party libraries, SDKs, APIs, or external services.
  • Good understanding of asynchronous programming, multithreading, or multiprocessing concepts.
  • Experience with Git and standard software development workflows.
  • Ability to debug complex integration issues.
  • Understanding of automated testing and code quality practices.


ML / AI Integration Skills

Deep ML research experience is not required, but the candidate should be comfortable working with ML models as software components.

Expected knowledge includes:

  • Basic understanding of machine learning and neural networks.
  • Understanding of the typical ML inference lifecycle:
  • input → preprocessing → model inference → postprocessing → application logic.
  • Experience or familiarity with one or more ML frameworks/runtimes such as:
  • PyTorch
  • TensorFlow
  • ONNX / ONNX Runtime
  • TensorRT
  • OpenVINO
  • TFLite
  • Ability to work with models, tensors, model inputs/outputs, preprocessing pipelines, and inference APIs.
  • Ability to collaborate with ML Engineers to move models from experiments into production environments.


AI Agents

Experience with AI agents or LLM-based applications is highly desirable.

Relevant experience may include:

  • Building LLM-powered applications.
  • Agent/tool-calling architectures.
  • Integration with external APIs and services.
  • Function calling and structured outputs.
  • RAG systems.
  • MCP or similar tool integration protocols.
  • Agent orchestration frameworks such as LangGraph, LangChain, or similar.
  • Working with commercial or open-source LLM APIs.


Production experience with these technologies is preferred, but strong Python engineers with relevant backend experience and an interest in agentic systems are also welcome.

Embedded / Linux Experience

Since many of our products are embedded Linux devices, experience in the following areas would be a strong advantage:

  • Embedded Linux development.
  • ARM-based platforms.
  • Cross-platform or cross-compilation environments.
  • Working with limited compute and memory resources.
  • Linux services and systemd.
  • Device communication and hardware interfaces.
  • Docker on Linux or embedded/edge devices.
  • Edge AI / on-device ML inference.
  • Performance profiling and optimization.

Deep embedded C/C++ experience is not mandatory, but familiarity with embedded development environments is beneficial.

DevOps — Basic Knowledge Expected

We do not expect the candidate to be a dedicated DevOps Engineer, but basic practical DevOps experience is desirable.

Examples include:

  • Docker and containerization.
  • CI/CD pipelines.
  • GitHub Actions, GitLab CI, Jenkins, or similar tools.
  • Linux application deployment.
  • Environment and configuration management.
  • Basic networking and troubleshooting.
  • Application logging and monitoring.
  • Basic understanding of Kubernetes is a plus.


Nice to Have

  • C/C++ knowledge and experience integrating Python with native libraries.
  • Experience with edge AI or embedded AI systems.
  • Experience optimizing neural network inference.
  • Experience with NVIDIA Jetson, ARM, NPU, GPU, or similar hardware accelerators.
  • Experience with gRPC, WebSockets, or event-driven architectures.
  • Experience with MQTT, Kafka, RabbitMQ, or similar messaging technologies.
  • Experience with PostgreSQL, SQLite, Redis, or other databases.
  • Experience with MLflow or other MLOps tooling.
  • Experience with microservices.
  • Experience developing SDKs or APIs for third-party integrations.


What We Are Looking For

We are looking for an engineer who is comfortable working between different technical domains:

Python development → ML models → Linux → embedded devices → APIs → AI agents → production deployment.

You do not need to be an expert in every area.

The ideal candidate is a strong Python developer who can take an ML model, prototype, or AI capability and turn it into a reliable, maintainable, production-ready software component.


About Sky Spy

Sky Spy is a fast-growing dual-use startup developing next-generation RF intelligence solutions for contested environments. We are backed by leading European VCs, combat veterans, and technologists. Our mission is to deliver intelligence that saves lives and empowers allied forces worldwide.

Share

Apply for this position

Required*
We've received your resume. Click here to update it.
Attach resume as .pdf, .doc, .docx, .odt, .txt, or .rtf (limit 5MB) or Paste resume

Paste your resume here or Attach resume file

Human Check*