Replay Poker (www.replaypoker.com) was founded in 2005 and is one of the most popular free-to-play online poker sites.
Our vision is to be the #1 free poker destination for all passionate players and its communities. Our mission is to offer the best free poker room and community experience to all poker players in a fair, friendly and competitive environment.
We will succeed by offering an exceptional poker game experience and never losing our players’ trust. We celebrate the world’s greatest card game, its rich history and tradition, and seek to inspire others to share in our passion.
The role
We are a small team of highly technical and experienced developers. The small team means you’ll have a huge impact on the decisions and the work being done. The expertise means you’ll get to learn a lot from other great developers. We all work remotely, 100% of the time, and are currently spread out across western Europe and the Americas.
You’ll be responsible for owning the security side of our entire stack. You will evaluate where we are currently and create a plan for addressing any issues you see. You will also help create awareness in the team about proactive security work and establish the changes in routines as needed.
You will also be responsible for maintaining and creating new features on all of our systems together with the rest of the team. These include the poker game client/server, poker lobby and just-as-important auxiliary services, like scheduling and player statistics etc.
We have a huge array of interesting problems to solve such as: clearing a lot of technical debt, preparing the platform for major scaling, adapting our product to run in geographically distributed datacenters while supporting a high speed, low latency game servers, optimising server to client communications, making the client run on new platforms and a lot of others. You will own the product as much as any of us and take collective responsibility in maintaining and improving it over time.
We look for smart and independent people who work best in a team where everyone pulls their weight and collaborates with each other. Proactivity is key so we can improve and expand our systems without micromanagement. You will be given a lot of freedom as long as you can handle the responsibility that comes with it.
We are not afraid of using new technologies when we have to, but know that sometimes boring technology is the best solution. Using the best tools for the job is taken seriously and we expect everyone to be flexible enough to learn and use them, but also courageous enough to challenge old choices and champion change.
Our stack
- Poker lobby: Rails 4, migrating to 6, a single page application with Backbone.js that is being replaced with a new SPA in React
- Poker game server: Ruby, with an eye towards Elixir
- Poker game client: React/JS
- Other technologies used: MySQL, Postgres, Sidekiq, Redis, NodeJS, Go, Kubernetes and many more
You must
- Have expert knowledge of Ruby and its surrounding ecosystem
- Have very good knowledge of web app security, including previous security work and security evaluation
- Have very good knowledge writing automated tests, be it BDD, TDD, etc
- Have very good knowledge of modern JavaScript (ES6+, React, Redux etc)
- Have very good knowledge of HTML5 and modern CSS (Less/Sass)
- Have very good knowledge of SQL and relational databases
- Have very good knowledge of Linux/shell
- Have good knowledge of Elixir with at least some working experience
- Have experience working with job queues, server side caching etc
- Have a good understanding of HTTP and REST-ful APIs
- Have worked with Websockets/SSE
- Be confident working with git, code review and pull requests
- Be eager to learn and able to express your thoughts, arguments, and ideas clearly and effectively
- Have excellent english language skills (fluent speaking)
Ideally you should
- Have experience with older Javascript frameworks, like Backbone
- Have expert knowledge in another language except for Ruby
- Have experience with Docker and Kubernetes
- Have professional experience working remotely
- Have contributed to open source projects
- Enjoy playing poker!
What we offer
- Plenty of autonomy for you to work the way you think you're most productive
- A flexible process with the focus on efficiency of working with minimal bureaucracy
- A mixture of fun and challenging projects working on a real-time game
- Competitive salary (negotiable and depending on experience/skills)