dreamwork_

Work Schedule

Standard (Mon-Fri)

Environmental Conditions

Office

Job Description

Job Description

Join Thermo Fisher Scientific to develop software platforms that support advanced scientific instruments and engineering workflows. Work with global product, hardware and software teams to deliver reliable systems used in semiconductor, life sciences and materials research.

How will you make an impact

We are seeking a Senior Python Engineer with 6–10 years of software engineering experience and substantial hands-on Python development. You will build backend services, system automation and device-management capabilities connecting scientific instruments, IoT gateways and edge devices. The role combines software design with practical Linux systems engineering, secure deployment, diagnostics and operational ownership across device, network and application layers.

What will you do

  • Design, develop and maintain modular Python services, APIs, command-line tools and automation libraries for device orchestration, process execution, configuration and data handling.
  • Manage IoT and edge-device lifecycles, including discovery, secure onboarding, provisioning, inventory, configuration, health monitoring and controlled decommissioning.
  • Integrate instruments, sensors and gateways through vendor SDKs, REST or gRPC APIs and messaging protocols such as MQTT; validate commands, telemetry and device state.
  • Automate deployment and version tracking of applications and containers on Linux edge systems; support-controlled software and firmware updates with compatibility checks, staged rollout and rollback or recovery.
  • Troubleshoot failures across Python code, operating-system services, networking, containers and hardware interfaces; implement structured logging, metrics, alerts and diagnostic collection.
  • Develop unit, integration and system tests using pytest, mocks, simulators and physical devices; integrate validation and deployment workflows into CI/CD.
  • Apply secure engineering practices, including device authentication, certificate and secret management, least-privilege access, dependency scanning and auditable change records.
  • Collaborate with firmware, hardware, QA, DevOps and product teams on requirements, interfaces and release readiness; mentor engineers and maintain deployment guides, runbooks and onboarding documentation.
  • Work effectively within an Agile Scrum / SAFe framework, participating in backlog refinement, sprint planning, technical estimation, PI planning, reviews, retrospectives, and cross-team coordination to support predictable and high-quality delivery.

Required Skills

  • Strong production Python development with object-oriented design, reusable modules, exception handling, concurrency, API integration, file operations and structured data such as JSON, YAML and CSV.
  • Familiarity on development experience in C/C++ integration, PowerShell, BDD/Robot Framework, hardware-in-the-loop testing or scientific and regulated product environments.
  • Hands-on systems engineering on Linux, including processes, services, permissions, resource usage, shell scripting and network diagnostics; ability to support Windows integration where needed.
  • Practical experience deploying, configuring, monitoring and troubleshooting physical IoT devices, industrial gateways or edge-computing systems, beyond cloud-only application development.
  • Working knowledge of TCP/IP, DNS, TLS, MQTT and HTTP-based communication, with an understanding of device connectivity, authentication and offline recovery.
  • Experience building Python backend services with FastAPI, Flask or equivalent, and integrating databases or local persistence for configuration, telemetry and operational state.
  • Hands-on Git and CI/CD experience, plus automated testing, mocking and dependency/environment management for reproducible execution across development and deployed systems.
  • Strong debugging, root-cause analysis, technical documentation and cross-functional communication; ability to own implementation through deployment and operational support.

Desirable Skills

  • Experience with NVIDIA Jetson, Raspberry Pi, industrial PCs or comparable ARM/x86 edge platforms; familiarity with device drivers, BSPs and hardware/software compatibility.
  • Exposure to Azure IoT or AWS IoT services, Kubernetes/k3s, Ansible or equivalent device and deployment orchestration tools.
  • Experience deploying AI inference workloads at the edge, or integrating LLM services for diagnostics and automation with validation and appropriate human controls.

Preferred Qualifications

·       Bachelor’s degree in computer science, Electronics, Electrical Engineering or a related technical field, or equivalent practical experience.

·       Experience delivering connected products or engineering platforms through the full development lifecycle in an Agile, globally distributed team.