View all positions

Senior Golang Engineer - Remote (EMEA)

Full time

Remote

Engineering


WunderGraph is growing fast, and we’re on a mission to redefine how companies leverage GraphQL Federation at scale. Our North Star is to enable collaboration across small and large organizations, leveraging APIs as the backbone of growing the business. Mega trends like AI need data, and data needs to flow from service to service, and from agent to agent. Data flows rely on APIs, which need a schema that’s shared across all stakeholders so it doesn’t create a huge mess. WunderGraph builds the foundation to enable this. Making this look easy for customers actually means solving hard technical problems, which is why we’re looking for people like you who can help us grow and build more exciting, cutting-edge tech! If you want to make an impact, make your voice heard, and work in a no BS organization so you can get stuff done: look no further and apply today!

About the Role

We're building WunderGraph Cosmo, the open-source GraphQL Federation solution. Probably the most important component of Cosmo is the Cosmo Router, which - simply put - connects all API endpoints and handles the GraphQL requests and responses whilst applying the Federation protocol (among other magical things, like normalization, execution planning etc.). Fully written in Go, it's the fastest GraphQL Router available and a quite potent (and complex) piece of cutting-edge open-source software. How about joining our team to make it even better and strap the rocket boosters onto GraphQL Federation?

You will be in charge of

  • Develop, refactor and maintain GraphQL Go Tools' (Router) open-source code base in Golang (low GC code)
  • Work closely with your engineering team mates on new Router capabilities (e.g. Open Federation, new data sources)
  • Focus on performance, security and stability of the Router
  • Review Router telemetry to identify areas of improvement
  • Run internal penetration tests of the Router
  • Troubleshoot Router issues, potentially together with our customers' engineers
  • Analyze and accept up open-source contributions on Github

The "Engine" is essentially a Golang application which translates GraphQL requests into any other protocol, like OpenAPI, SOAP, gRPC, GraphQL, Apollo Federation, etc... You could consider the Engine as a "GraphQL Compiler" or Transpiler. The Engine is responsible for parsing, normalization, execution planning, execution runtime, etc... If you are interested in working with ASTs, AST transformations, etc... you will love this kind of work. We have performance requirements, so you should be proficient in writing performant and low GC code in Golang.

Some of your tasks will take more than a few weeks to complete, Ideally, you're someone who likes to go deep on one topic instead of going wide and shallow on many different topics.

Here's a list of things you might be working on:

  • Extend the Compiler "backend" to support Apollo Federation v2
  • Extend the Compiler "backend" to support gRPC
  • Implement a native Go-based data source for SOAP and OpenAPI, currently we're using a Node.js based solution with a bridge
  • Improve the batching-implementation of the Engine
  • Improve the performance of the Engine in general, driven by feedback from our customers

If I (the CEO) had more time, I'd do all of this on my own, just because I enjoy this kind of work. Unfortunately, my role requires me to focus on Marketing, Sales, Product, and other aspects of the company. That's why we're looking to expand our "Engine Team" with you!

What you bring to the table

  • At least 5 year of proven Golang development experience in a leading / ownership role (must have)
  • Self-starter with a clear sense of priorities - no hand-holding needed
  • You must be willing and able to work out solutions on your own. This requires you to dig into hard problems and stay on target until you have solved an issue in a robust way.
  • Experience in working with ASTs, AST transformations etc.
  • Experience in writing performant and low GC code in Golang, and knowledge of how to benchmark Go code
  • Experience with GraphQL, API Gateways, Proxies, and Networking in general is a plus
  • Experience with OpenAPI, SOAP, gRPC, GraphQL, Apollo Federation is a plus
  • Open-source contributions are a benefit, too
  • You are able to work and thrive in a fully remote environment
  • Excellent communicator (important for a remote team) in English

What Success Looks Like

  • Customers love our product because it works flawlessly, securely and fast - and because it looks darn pretty, too!
  • Developers love our product because of the exceptional DX (as said before, we’re an engineering company, so we care a lot about DX)
  • Your teammates love to work with you because you never let them down, share your knowledge, and ship like crazy as a team
  • Proper tests and clean code that prevent outages and security issues
  • You grow along with us

Why WunderGraph?

  • We hate overhead as much as you do, so we keep it at an absolute minimum - no distractions!
  • Pick your preferred work hardware
  • We ship stuff and get sh*t done
  • International team with a sometimes weird sense of humour
  • You can make a real difference and find lots of opportunities to grow together with us
  • Build something you love
  • Discretionary PTO
  • Competitive compensation
  • Quarterly team retreats across the globe

Note: This is a full-time, fully remote position. We are looking for someone who is available to work during European (CET) business hours.

The Process

We're aiming to make the process as fast as possible. Here's what you can expect:

  • Intro with our CTO
  • Small project / programming task (1 - 2h effort) in form of a contribution to our open-source project
  • Meet the other founders + Culture fit call with the team
  • Offer

We're hiring through Deel as our Employer of Record, except for Germany where we're hiring directly.

We’re looking forward to your application so we can grow together!