Senior Software Engineer
We are looking for a Senior Software Engineer to join our RIC Systems team and work on complex, large-scale distributed systems.The role combines hands-on development in Go, system design, Kubernetes-based environments, and technical problem-solving across multiple services and components. We are looking for an experienced engineer with strong technical capabilities, a collaborative approach, and the flexibility to work across different areas of the system.
This role is not for someone who wants to work exclusively at one layer of the stack.
It is a strong fit for an engineer who enjoys understanding why the entire system behaves the way it does.
You may need to trace a problem from a Go service, through Kubernetes networking, into the Linux networking stack, across a messaging layer, and eventually into a C++ component. On another day, you may be designing how 30 services coordinate state or reviewing the architecture of a new Non-RT RIC capability.
The common thread is systems thinking.
You should enjoy moving between details and architecture, debugging and design, software and infrastructure.
What You'll Do:
- Design and develop production backend services, primarily in Go, as part of a large distributed system.
- Take ownership of features and technical solutions from design through implementation and production.
- Design and improve multi-service flows, including messaging, state management, concurrency, reliability, and failure recovery.
- Develop and operate services in Kubernetes-based environments.
- Investigate and resolve complex production and performance issues across services and system components.
- Contribute to architectural decisions, technical standards, scalability, and reliability improvements.
- Collaborate closely with engineers and other teams to solve cross-system technical challenges.
- Mentor and support other engineers through design discussions and code reviews.
What We're Looking For:
- 5+ years of professional software engineering experience building complex production systems.
- Strong hands-on development experience in Go, including backend services and concurrency.
- Strong experience with Kubernetes, microservices, and distributed systems.
- Experience with messaging and distributed infrastructure such as Kafka, NATS, Redis, or similar technologies.
- Strong system-design and problem-solving skills, with the ability to understand complex flows, dependencies, bottlenecks, and failure scenarios.
- Experience with communication, telecom, or networking systems – an advantage.
- Experience working in Linux environments – an advantage.
- Strong communication and collaboration skills and a team-oriented approach.
- Flexible and adaptable mindset, with the ability to learn quickly, move between different technical areas, and work effectively in a changing environment.
Nice to Have:
- Experience with telecom, mobile networks, RIC, O-RAN, 5G, or 4G RAN.
- Experience with high-performance or latency-sensitive systems.
- Ability to read or debug C/C++ when needed.
Skills
As published by lever
Resume/CV, Full name, Email, Phone, Current location, Current company, LinkedIn URL, Other website