Our client is an international technology company driving digital transformation for industry and business. As an IT integrator, the company delivers end-to-end services — from PLM implementations and data migrations to cloud platforms, IIoT, digital product engineering, advanced Data & AI analytics, and supply chain optimization. Working with global technology partners, it executes projects across sectors such as automotive, manufacturing and agricultural machinery, providing both off-the-shelf and bespoke systems plus organizational change support. Teams build Digital Thread, Digital Twin and sustainability-focused solutions, blending engineering practices with cloud and AI technologies. The company seeks candidates eager to grow in PLM, cloud, IIoT, Data & AI, systems implementation and automation — from junior to senior levels — in a fast‑paced, project-driven international environment.
Principal Go Engineer - Distributed Systems & Data Platform
We offer:
During a technical interview it's worth preparing to discuss
- A distributed system that the candidate designed or significantly redesigned.
- A scalability or performance problem that the candidate solved independently.
- A system handling very large volumes of events or data.
- A major production incident and the changes made after its analysis.
- A complex technical initiative led by the candidate within one or multiple teams.
Responsibilities:
About the role
We are looking for an experienced Principal Go Engineer to join the team developing an advanced, distributed data and analytics platform.
The role is intended for someone who not only codes but also takes responsibility for the architecture, performance, reliability and development of key platform components. We are looking for an engineer with hands-on experience designing, building and maintaining large production systems.
The platform processes large volumes of network and telemetry data and runs in Kubernetes environments, public cloud and on-premises infrastructure.
- Designing and developing scalable and fault-tolerant backend services in Go.
- Building high-performance pipelines for ingesting, transporting and processing data.
- Designing event-driven architecture based on Apache Kafka.
- Defining service boundaries, data flows and communication methods between components.
- Making architectural decisions regarding scalability, consistency, availability and disaster recovery.
- Analyzing issues related to performance, concurrency and reliability of production systems.
- Optimizing Go services at the CPU, memory, concurrency and network communication levels.
- Raising standards in code quality, testing, observability, security and software delivery processes.
- Technically leading complex initiatives spanning multiple components or teams.
- Mentoring experienced engineers and supporting them in making technical decisions.
- Collaborating with architects, DevOps teams, product teams and domain experts.
- Participating in analysis and resolution of complex production incidents.
Additionally:
Recruitment process and terms of cooperation
- The process consists of two stages: a technical interview with our client and an interview with the end client.
- The interview with the client usually takes place within approximately 72 hours of the first stage.
- Meetings with the client are usually held in the afternoon, after 4:00 PM.
- Employment is conditional on successful completion of HireRight verification.
- The verification may include a criminal background check and confirmation of current and previous residential addresses.
- The HireRight process begins after a hiring decision is made.
- Cooperation is possible on the basis of an employment contract or a B2B contract.
- Work is fully remote, during European working hours.
- We are looking for someone available as soon as possible.
Requirements:
- Minimum 10 years of professional experience in software development.
- Minimum 5 years of commercial experience programming in Go.
- Experience in a Staff Engineer, Principal Engineer, Technical Lead, Solution Architect, or similar role.
- Documented experience with technical ownership of complex production systems.
- Very strong knowledge of designing and maintaining high-availability distributed systems.
- Experience with platforms processing large volumes of events, network traffic, or data.
- Advanced knowledge of Go, including concurrency, memory management, profiling, testing, and performance optimization.
- Strong knowledge of partitioning, replication, eventual consistency, idempotency, delivery guarantees, retries, failure handling, and graceful degradation.
- Extensive experience with Apache Kafka or a comparable event-streaming platform.
- Very strong knowledge of microservice architecture and REST API design.
- Advanced SQL knowledge and commercial experience with PostgreSQL.
- Production experience with Docker and Kubernetes.
- Experience diagnosing complex issues in distributed environments.
- Good knowledge of observability, application security, and reliable software delivery processes.
- Ability to make, document, and clearly communicate architectural decisions.
- Very good knowledge of English.
Additional advantages:
- Experience with Apache Druid or other distributed analytical databases.
- Practice in building real-time data processing systems.
- Experience with multi-tenant platforms and hybrid cloud environments.
- Knowledge of Terraform, Ansible and Helm.
- Experience with Prometheus, Grafana and OpenTelemetry.
- Knowledge of gRPC and Protocol Buffers.
- Knowledge of OAuth 2.0, OpenID Connect, TLS and certificate management.
- Experience in performance testing, load testing and stress testing.
- Practical knowledge of Google Cloud Platform, AWS or Microsoft Azure.
- Experience in telecommunications, network analytics or telemetry protocols.
- Participation in open source projects related to Go, infrastructure or distributed systems.
What will be an additional advantage
- Experience with systems processing millions of events per second or data measured in terabytes.
- Advanced optimization of Go services at the CPU, memory and concurrency level.
- Building business-critical platforms with strict availability requirements.
- Ability to discuss architectural trade-offs based on personal experience.
- Combination of very strong hands-on skills with mature technical leadership.