jobapplier

Python Engineer

RNRS Solutions

Responsibilities

  • Build Python pipelines
  • Design, implement and maintain modular pipelines for loading, processing, transforming, analysing and exporting technical data.
  • Structure Python projects
  • Turn experimental scripts and notebooks into maintainable packages with clear modules, utilities, libraries and interfaces.
  • Develop reusable components
  • Build internal utilities and libraries that can be reused across experiments, datasets and engineering workflows.
  • Object-oriented development
  • Design and work confidently with Python classes, inheritance/composition where appropriate, interfaces and reusable abstractions.
  • Data analysis & EDA
  • Explore datasets, identify patterns and anomalies, validate assumptions and help engineers understand what is happening in the data.
  • Data visualization
  • Build clear technical visualizations using tools such as matplotlib, Plotly or similar libraries to communicate results and support engineering decisions.
  • Work with scientific Python
  • Use libraries such as NumPy, Pandas and SciPy to process and analyse numerical and time-series data.
  • Improve engineering quality
  • Refactor existing code, reduce duplication, introduce clear abstractions and help establish good practices around maintainability, testing and documentation.

Containerize development workflows

  • Use Docker to create reproducible development and execution environments.
  • Work comfortably in an engineering workflow using Git for version control, Jira for task and sprint management, and Slack for day-to-day team communication.
  • Work with R&D teams
  • Collaborate closely with signal-processing, radar and AI/ML engineers to translate experimental requirements into reliable Python tooling and pipelines.

Requirements

  • 3–5 years of professional experience working with Python, ideally on engineering, scientific, data-intensive or R&D projects.
  • Strong practical Python skills — you should be comfortable building complete projects rather than only writing standalone scripts.
  • Strong understanding of how to structure a Python codebase using
  • modules, packages, utilities and reusable libraries
  • Ability to design and develop
  • multi-step data-processing pipelines
  • with clear inputs, transformations and outputs.
  • Strong understanding of

object-oriented programming in Python

  • and confidence creating, extending and working with classes.
  • Experience working with numerical or analytical data using libraries such as
  • NumPy, Pandas and/or SciPy
  • Strong
  • EDA skills
  • ability to investigate datasets, identify patterns, anomalies and data-quality issues, and communicate findings.
  • Experience creating technical visualizations with
  • matplotlib, Plotly or similar tools
  • Strong working knowledge of
  • Git, including branches, pull requests, merge workflows and collaborative code review.
  • Hands-on experience with
  • Docker, including building and running containers and using containerized development environments.

Comfortable working with

  • Ability to write clear, readable and maintainable production-quality Python code.
  • Comfortable working in an environment where requirements evolve through experimentation and engineering discovery.
  • Strong problem-solving skills and the ability to work independently while collaborating with engineers from different technical disciplines.

Preferred

  • Experience working on
  • Data Science or Machine Learning projects
  • Familiarity with

scikit-learn, PyTorch or similar ML libraries

  • Experience processing large numerical, sensor, time-series or signal datasets.
  • Experience supporting researchers or ML engineers by turning notebooks and prototypes into reusable software.
  • Familiarity with testing Python applications using tools such as
  • pytest
  • Experience with performance optimisation or vectorised numerical processing.
  • Previous experience in
  • deep-tech, robotics, autonomous systems, radar, signal processing or another R&D-heavy environment

About the role

We are looking for a

Python Engineer with 3–5 years of hands-on experience building Python projects

Your focus will be on designing and developing structured Python pipelines used for data processing, analysis, experimentation and visualization.

This is not a role for someone who has mainly used Python for isolated scripts. We are looking for an engineer who knows how to take a growing collection of experiments and processing logic and turn it into a clean, maintainable Python codebase with reusable utilities, libraries, classes and well-defined pipelines.

You'll work closely with engineers and researchers working on signal processing, radar and AI/ML, helping them process, explore and understand complex datasets efficiently.

What we're looking for

Jira for task tracking, sprint planning and engineering workflows.

Comfortable using

Slack as a primary collaboration and communication tool within an engineering team.

Impact

Build the Python infrastructure that engineers and researchers use to process, analyse and understand real-world data. Your work directly improves how quickly the team can experiment, validate ideas and move technology forward.

Engineering Challenges Worth Solving

Work with complex datasets and technical problems where clean software engineering has a direct impact on R&D speed and product performance.

A Team You'll Learn From

Collaborate closely with signal-processing engineers, AI/ML engineers, scientists and other specialists working across software and hardware.

Ownership & Autonomy

We're looking for someone who can see an experimental Python workflow and think beyond the immediate script — how should this be structured, reused, tested and maintained as the system grows? You'll have the autonomy to improve the architecture, introduce better engineering practices and build tools that become part of the team's everyday workflow.