Turbulent is looking for an intermediate back-end developer with a good knowledge of Node.js and TypeScript. The position involves working on our Star Citizen team, more specifically on microservices that directly affect in-game experience (matchmaking, lobbies, chat/voice chat…).
The candidate would be part of a 20-person team located in Montreal – consisting of intermediate to senior developers – and would be collaborating with Cloud Imperium Games’ gameplay team in studios all over the world (UK/USA).
Develop microservices for Star Citizen using Node.js & Typescript
Collaborate with other team members, including game developers at Cloud Imperium Games
Participate in technical design with Cloud Imperium Games’ gameplay teams
Understand optimization requirements for real-time server communication using websockets
Participate in sprint planning and retros
Respect deadlines and production timelines
Participate in the deployment of releases
Assess suitable technologies for specific projects and provide recommendations to team members
Present and share information in a form experts from other disciplines can understand and collaborate in a proactive manner
Write and maintain unit and acceptance tests for your code
Ability to suggest, experiment and prototype using the latest technologies (an asset)
Participate in the code review process
Bachelor’s degree in Computer Science or relevant experience in software development
2+ years experience programming in Node.js. Experience with Typescript is a plus
Comfortable with the Linux and Windows command line
Awareness of security and scalability issues related to back-ends
Knowledge of software testing techniques (Jest, Mocha, Chai or Sinon).
Knowledge of event sourcing and domain-driven development
Ability to work in English
Experience with Docker and Kubernetes; an asset
Experience with Gitlab CI and built pipelines; an asset
Functional programming; an asset
Capacity to work autonomously (which implies to ask for help when needed).Wllingness to work with unfamiliar technologies and healthy communication (being able to listen and communicate when certain things are unclear). Excellent capacity to work in teams and collaborate in order to find the best solution. Professionalism: Adhere to code review processes, testing the code, and adopt a serious approach to programming.
We have four-legged colleagues who make our lives better.
On Friday, our beer fridge reminds us via Slack to complete our timesheets and won’t open until they’re all done at 4 pm.
Some of our colleagues are working on an application in the lab to let us know which bathroom is free when! (we enjoy being practical while having some fun)
Our high-quality espresso machine has a high ROI. (especially in the morning)
An on-site gym is used for yoga, and we train with an instructor who takes it very seriously (there is a shower on site, so no worries)
Our arcade and ping pong table are not mere decorations!