Senior Software Engineer

London
Engineering

At Improbable, we’re bringing together technology and games to create new opportunities and experiences. In order to achieve this, we need unique perspectives from diverse people, empowered to revolutionise how online games are made, delivered and paid for.

We believe one of the biggest, most impactful changes to the way we live our lives is going to come from the medium of games. Realising new communities, societies and vocations through virtual worlds is what drives our people and gives them purpose.

Your Mission:

Engineering is at the heart of Improbable. We solve some of the hardest problems around in areas such as distributed systems, high-performance cloud computing, messaging and much more.

We are technology neutral and believe in well-tested, robust code. Much of our platform is built in GoLang/Java with areas of C++, TypeScript and C#. We use Open Source technologies (such as CoreOS, etcd, Fleet, Docker, Prometheus, gRPC) and give back to the community through open source contributions when we can.

We’re hiring Senior Software Engineers across multiple teams. There is always a diverse range of challenging and interesting projects to work on. Similarly, we welcome diverse engineering backgrounds and are able to offer highly interesting challenges across all our teams, we never hire to fill a gap.

You can read more about the technical challenges we’re solving here.

Responsibilities:

  • Designing and implementing new algorithms to distribute and scale our simulations
  • Integrating new workers with our distributed stack
  • Core infrastructure that underpins seamless scaling (networking, packing, storage, containers, logging, security across all compute providers)
  • Creation of world-class, robust APIs and SDKs for external customers
  • Developing tooling to understand, visualise and reason about large real-time simulations

Competencies:

  • A strong software engineering pedigree, comfortable choosing the most appropriate language/technologies for the project at hand.
  • You have previously operated in a senior capacity and mentored or coached more junior engineers from a technical perspective.
  • Software Engineering is more than just a job to you. Perhaps you contribute to Open Source projects, blog or speak at events occasionally, or just spend a great deal of your time thinking about interesting problems.
  • You're disappointed when you're not learning something new or stretching yourself.
  • You can offer your opinion and respectfully reason with people, but equally commit to the direction decided by the majority after being heard.
  • You value working in different problem areas and are prepared to work in whichever team is necessary to add the most value to the business.
  • You embrace that in a fast-growing start-up, priorities can change quickly.
  • You're accountable and get satisfaction from shipping stuff on time / delivering quantifiable results.
  • You go out of your way to help others achieve and improve as a team.
  • You're modest when the results speak for themselves, and humble enough to take responsibility when they don't.

Experience of the following would be advantageous:

  • Building large-scale distributed systems
  • Working on cloud-based scalable architectures
  • Building high-traffic, robust APIs, SDK or web architectures
  • Working with Game Engines (i.e. Unity, Unreal, CryEngine etc…)

Equal Opportunity

The best ideas are often the least expected and require new ways of thinking; that’s why our teams at Improbable are made up of an incredible range of talented people. Improbable is proud to be an equal opportunity employer. We do not discriminate based on race, ethnicity, colour, ancestry, national origin, religion, sex, sexual orientation, gender identity, age, disability, veteran status, genetic information, marital status or any other legally protected status.