Description

Key Duties and Responsibilities

 

Understand customer requirements 

Design, implement, maintain and test backend services, including new parts of the product that follow R&D research effort 

Perform bug qualification, release testing 

Improve performance of backend services vs. database access patterns and schemas, yet keeping ease of coding and code discoverability top-notch 

Ensure advanced observability and service composability 

Modularize backend architecture using a balanced approach 

Improve infrastructure resilience using load testing and staged service interruption methods

 

Minimum Education/Certification Requirements and Experience

 

BS in Engineering, Computer Science, or related field with 5 years’ experience, MS with 3 years’ experience, or PhD with 1-year experience 

Software development experience, on open-source software or in a professional setting 

Deep knowledge of databases, experience with multiple programming languages 

  

Preferred Qualifications and Skills

 

Top-notch communication and interpersonal skills 

Knowledge of, and taste for elegant software design 

Familiar with long-running jobs, asynchronous architectures and communication 

Familiar with message exchanges, queues and associated bottlenecks 

Familiar with event-oriented architectures 

Ample knowledge of database fundamentals (indexes, ORMs) and associated bottlenecks 

Knowledge of scalable and clustered architectures 

Familiar with data-intensive applications and data pipelines 

Ability to learn quickly and to collaborate with others in a geographically distributed team  

Experience with Python, Postgres, RabbitMQ, Redis 

Experience with Rust and Elixir is a plus 


 

Education

Any Graduate