Position: Lead DB Engineer
Company: SoftServe
Experience required: 5y
Category: SQL
English level: intermediate
Published: 2021-04-01T00:00:00+03:00

**WE ARE**

Our client is UK-based food delivery company, which operates in 13 countries with over 60,000 riders who deliver orders from 50,000 restaurants in over 500 cities worldwide. Now we are a multi-billion-dollar company that is more than doubling in size every year.

We work with riders, restaurants, and consumers. We operate one of the most complex three-sided marketplaces in the world and we do this in real-time. Millions of customers and thousands of restaurants and riders rely on us to match them within milliseconds. The algorithms behind that marketplace are the secret sauce that allows us to deliver our orders in under 30 minutes.

Currently, all global users access the same platform infrastructure, and when infrastructure breaks all global users are impacted by any issues or outages. Currently, services have to process data for all our global markets and there is a limit to how much they can be scaled.

**YOU ARE**

Having at least 4 years of relevant work experience and a strong professional in PostgreSQL
Familiar with cloud-hosted DBs, managing them at scale at or near their limits, using tools to automate DB management
Experienced with Aurora, and using Terraform and managing resources using AWS Console (for infrastructure level changes)
Having expertise with Ruby and ActiveRecord (for application-level changes)
The candidate who has worked with systems that have an always-on requirement, and with Aurora clusters with replicas
A professional who has used system metrics to reason about database health
Ready to suggest improvements to database and query performance
Skilled in performing maintenance on databases without supervision
Capable of giving advice and consulting on a wide range of database issues
Ready to present tradeoffs directly or make justifying documentation for work to stakeholders
Showing background working in cross-functional teams, including with people who are not DB centric
Confident in making documentation for basic database management tasks (for teaching)
Aware of the limits of documentation and know when it's better to discuss ad-hoc problems
Able to apply the knowledge and experience in a structured and repeatable way when working with other engineers in the team
Skilled in coaching/mentoring individuals in a structured and consistent way
Showing good communications skills across all levels of stakeholder (business & technical)
Demonstrating Intermediate strong+ English level

**YOU WANT TO WORK WITH**
Identifying and tuning basic maintenance parameters, e.g. auto vacuum settings, index management, and other database instance/cluster parameters.
Managing data and schema changes (e.g. migrations) using an ORM (we use ActiveRecord as part of a large Ruby/Rails monolith)
Advanced database designing such as table partitioning and sharding, connection management patterns, load balancing (e.g. replica management), etc.
DB load optimization
Utilizing emerging technologies and delivering high-quality and timely code
Сross-functional global teams to define, design, develop, and deliver new features as well as optimizing existing code
Continuous exploring, evaluating, and incorporating new technologies into our products and processes to improve development efficiency
Delivering quality software solution using Agile development cycle
Analyzing and resolving performance, stability, and security issues

**TOGETHER WE WILL**
Support your technical and personal growth — we have a dedicated career plan for all roles in our company
Enjoy flexible working hours — whether you are a morning bird or a sleepy head, it is ok with us
Take part in internal and external events where you can build and promote your personal brand
Give you access to experienced specialists willing to share their knowledge
Care about your individual initiatives