We are looking for a backend engineer ready to lead the design and implementation of new features involving Tacter Backend. Right now, our Tacter Backend looks like the following:
- A Node.js project running on an Elastic Beanstalk in AWS.
- A Rest API that our apps use based on Express.
- A PostgreSQL Database running on a RDS in AWS and managed by our backend through the ORM Sequelize.
- A bunch of monitoring dashboards built on CloudWatch.
- A set of internal tools that our content team use built with Retool directly connected to our Backend via API and our database.
Tacter Backend is the corner-stone of our project. It's responsible of the following:
- Serve data to Tacter apps via a REST API.
- Save user generated data in our PostgreSQL database.
- Save content-team generated data from our internal tools in our PostgreSQL database.
- Sync and transform game-related data from the API of the games that we support. Mainly coming from the Riot Games API.
As our backend lead engineer you will be responsible to maintain and develop Tacter Backend in a clean and structured way.
Among our engineering team, you will lead team decisions about API design, workflows for our content-team, scalability, data structure and schemes. You will usually work alone during the implementation phase.
We're looking for someone with:
- 😃 Previous experience in backend development, API design, JS (Node.js), GIT and SQL.
- 🔥 Previous experience working with third-parties API. We are going to exploit Riot Games API.
- 🛠️ Basic experience with AWS, specially in scalability and monitoring tools.
- 📝 A document first, code later approach. We are remote, we communicate asynchronously most of the time. Good documentation and communication are our pillars.
- 👨💻 Fluency with our current stack. We are open to change the stack over time, but we need someone that can be productive from the first days.
- 🌐 A minimum level of English to communicate to other peers and document.
We are the perfect match if:
- ♻️ You're a quality seeker. We build our own product and we love it! Here, quality is way more important than speed.
- 🎁 You've built some projects on your own. A blog, a website, a youtube channel... everything counts.
- 💡 You've previous experience with:
- Frameworks that we use such as Express or Sequelize.
- Process Automatization with Jenkins, Ansible, Github Actions...
- AWS Stack / Dev-Ops.
- iOS Development with Swift.
- Android Development with Kotlin.
Bonus points if:
- 🚀 You like the startup world. You like to have more responsibility and look to have an impact in other parts of the company.
- 🏝️ You've experience working remotely.
- 👾 You like computer games. In particular from Riot Games, like ****League of Legends, Teamfight Tactics, Legends of Runeterra, or Valorant.
What we offer
- 💸 Salary between 22.000K€ - 28.000K€.
- 🕹️ 100% Remote from anywhere.
- 🗓️ Full-time, 40 hours per week in a totally flexible working schedule. Commit to your work and be present in the meetings, that's what we ask you for.
How you will work
We are creating a small high performance team each of us holding a main responsibility: Design, Android, iOS.. yours is gonna be Backend. You will be the one who knows the most about the Backend related stuff. Usually, we work together as a team at the design phase, solving the problem first. Then, we implement the part of the solution that is our responsibility alone.
So far, we use a Kanban methodology with several tasks created in different stages of our workflow. Our workflow is a loop similar to this one:
- Everything starts with our pretty long idea's backlog. We mainly rely on our users' feedback to prioritize its order. Based on users, we decide what's next, and the UX/UI team (also known as Carlo) start to work on it.
- When they have something to talk about, the tech team, including you, give the first feedback and they iterate again.
- Backend is the only project that is not user-facing rigth now so your role is to design the necesary data models, API requests, database migrations, data-flows...
- We document everything. We make diagrams, graphs, think about different ways of approaching the problem and when we have it figured out, we start coding it. We usually try to reduce every iteration as tiny as possible and deploying many times per week.
- We do not usually work with deadlines, and we repeat every iteration as many times as needed to get the result that we want.
Tacter is our product. We love it. Here, outcome quality is more important than speed.