We are growing our Engineering team. Join a team of brilliant software engineers who love to learn and grow together. The Senior Backend Engineer will be developing, testing, releasing, and maintaining our platform’s backend APIs and business logic modules.
- Bachelor’s Degree in Computer Science or equivalent field.
- 5+ Years of experience as a Backend Software Engineer.
- Proven experience with Python and/or Golang.
Skills Required (apply even if you don’t know all of them):
- Know code versioning using git.
- Know how to run a server-side code and expose it to the web in at least 1 language.
- Debug code that you have not written yourself.
- Write unit tests including data mocking.
- Data modeling of existing entities in our end-to-end delivery cycle.
- Implement designs in one of the object-oriented programming languages.
- Represent data models in relational databases either using SQL or through an ORM.
- Interact with NoSQL databases.
- Write fast RESTful APIs (a lot of them) that respect object-level authorizations.
- Interact with third-party APIs that use the OAuth protocol.
- Write down in code a given algorithm (including proper I/O handling & database access).
- Write multi-module integration tests.
- Understand the web security models and how to secure infrastructure and data.
- Write background tasks and task runners that are triggered asynchronously.
- Design and deploy service-based architectures.
- Model optimization problems and design solutions for them (not coding).
- Manage a relatively small cloud-based infrastructure.
- Work with peer software engineers (pair programming, code reviews, merging conflict resolutions, ..etc.)
- Understand web sockets and how different they are from stateless http requests.
- Design and implement scalability strategies.
- Design solutions for a service availability of 99.99% (~ 52 minutes down time per year).