Senior Software Engineer (Erlang)

Saint Louis

Riot Games was established in 2006 by entrepreneurial gamers who believe that player-focused game development can result in great games. In 2009, Riot released its debut title League of Legends to critical and player acclaim. As the most played video game in the world, over 67 million play every month. Players form the foundation of our community and it’s for them that we continue to evolve and improve the League of Legends experience. 

We’re looking for humble but ambitious, razor-sharp professionals who can teach us a thing or two. We promise to return the favor. Like us, you take play seriously; you’re passionate about games. We embrace those who see things differently, aren’t afraid to experiment, and who have a healthy disregard for constraints.

That’s where you come in.

As a Senior Software Engineer, you will be responsible for the technical soundness, scalability and operational effectiveness of our messaging and presence system based on ejabberd. While our interview process will emphasize problem solving, design and programming ability, it will equally focus on your ability to provide technical leadership and guidance to a team of high-caliber engineers. This represents a unique opportunity to help drive the evolution of our messaging platform.


As a software engineer with experience in Erlang and ejabberd, you would be responsible for evolving the core messaging and presence platform in a large scale distributed environment. Your responsibilities will include designing and developing new features and capabilities in the Erlang based components with a focus on aggressive growth and scale.

  • Research, design, development, test and support of Erlang based software and ejabberd
  • Architect and develop scalable, distributed solutions for emerging platform features
  • Develop solutions using distributed concurrent programming, software  packaging and release
  • Write code in Erlang and occasionally in other languages such as Java
  • Evaluation of open source Erlang killer apps
  • Mentoring and coaching junior staff


  • Several years of experience developing software, preferably in an agile environment
  • BS in engineering, preferably Computer Science. Master’s Degree a plus
  • Be passionate about Erlang
  • Superstar programming skills in Erlang
  • Experience with ejabberd, Mnesia, MySQL
  • Knowledge of relational databases and concepts
  • Experience with other Programming languages
  • Basic understanding of TCP/IP stack and networking concepts
  • Knowledge of Distributed Computing, and revision control software
  • Experience with interconnection protocols (HTTP, XMPP, XML-RPC)
  • Experience with mainstream operating systems, including Linux
  • Experience with Agile Methods, including Test Driven Development
  • Experience of planning, estimating and leading a team is an advantage
  • Good verbal and written communication in English
  • Must be team-oriented, possess a positive attitude and work well with others
  • Ability to work independently and deliver on schedule with little supervision
  • Ability to quickly understand and articulate interactions in a complex technical environment
  • Able to plan and execute own tasks in timely manner
  • Passionate about software development, willing to learn new technology, self-motivated with high technical competency

Click the button below and don't forget to include a resume and cover letter. We receive a lot of applications, but we’ll notice a fun, well-written intro that shows us you take play seriously.