Senior Python Engineer
About the Role
You will develop and maintain a Python-based configuration generator that produces structured configurations for energy storage systems. You will also own deployment automation using Ansible across target environments.
Key Responsibilities
Design, develop, and maintain the configuration generator codebase in Python 3.10+, following OOP and SOLID principles
Write and maintain component and integration tests using pytest and Allure
Validate data models using Pydantic and generate structured outputs (JSON, YAML) via Jinja2 templates
Work with PostgreSQL (via psycopg) for site configuration persistence
Build and maintain Ansible playbooks and roles for deploying configurations to target environments
Develop and maintain Docker and Docker Compose environments for local development and CI
Maintain and extend the Jenkins CI/CD pipeline (Groovy DSL)
Collaborate via GitHub pull requests following Conventional Commits, with Jira ticket traceability
Enforce code quality with mypy (static typing), PEP8, and project-specific best practices
Contribute to internal documentation (contributing guides, how-tos, troubleshooting guides)
Nice to Have
Experience with energy storage, grid software, or industrial control systems
Familiarity with OPC-UA, SparkPlug B, or Modbus protocols
Experience with SonarQube for code quality analysis
numpy for numerical configuration computations
Jira-based agile workflows
Linux/macOS development environment (CI runs on Linux)

