Python Developer

Opportunity

Python Developer

  • We are seeking an experienced Python Developer with strong expertise in algorithm development, optimization modelling, and power system techno‐economic assessment.
  • The ideal candidate will have deep knowledge of Python’s core features, data analysis, web frameworks, and modern development practices.
  • Experience with mathematical optimization tools, containerization, and message‐queue technologies will be considered a significant advantage.

Desirable skills/knowledge/experience:

  • Strong proficiency in Python programming and its optimization/analytics ecosystems.
  • Proven experience with algorithm development and computational problem‐solving.
  • Hands‐on experience with data analytics, visualization, and database systems.
  • Solid understanding of power system modelling, techno‐economic simulation, and energy systems.
  • Strong debugging, profiling, and performance optimization skills.
  • Excellent communication and documentation abilities.
  • Experience using Pyomo, AMPL, Gurobi, CPLEX, or similar optimization tools.
  • Working knowledge of containerization and cloud‐native deployment.
  • Familiarity with RabbitMQ/Kafka, microservice architecture, and distributed systems.

Your responsibilities:

  • Develop, optimize, and maintain software using core Python features including iterators/generators, exception handling, file handling, type hints, OOP, and data structure design.
  • Build scalable algorithms and write clean, maintainable, and well‐structured code.
  • Develop and maintain RESTful APIs using OpenAPI/Swagger, Connexion, or FastAPI.
  • Work with Python web frameworks such as Flask, Django, FastAPI, and Jinja2.
  • Data, Analytics & Databases
  • Perform data manipulation and analysis using tools like Pandas and NumPy.
  • Design, query, and maintain both relational databases (e.g., PostgreSQL) and NoSQL/document stores (e.g., MongoDB).
  • Build data pipelines and support analytics dashboards and visualizations in Python.
  • Mathematical Modelling & Optimization
  • Develop and solve Linear Programming (LP), Mixed Integer Linear Programming (MILP), and other optimization models.
  • Use optimization tools and libraries such as Pyomo, AMPL, Gurobi, CPLEX, or similar solvers.
  • Model the behaviour of power system components including generation assets, demand profiles, and network elements.
  • Contribute to techno‐economic assessments of power systems using Python-based models.
  • Quality Assurance & DevOps
  • Write unit tests using unittest or pytest, with exposure to Test‐Driven Development (TDD) methodologies.
  • Use Git and modern version‐control workflows; collaborate via Azure DevOps or similar platforms.
  • (Bonus) Develop and deploy containerized applications using Docker, and support container orchestration (e.g., Kubernetes).
  • (Bonus) Work with messaging/streaming technologies such as RabbitMQ or Kafka.

Job Details

Company
Gazelle Global
Location
Wokingham, Berkshire, UK
Posted