DB Design Engineer

Job Title: DB Design Engineer

Job Description

We are looking for a Database Design Engineer who will be responsible for designing databases and ensuring their stability, reliability, and performance. You will be responsible for defining the detailed database design, including tables, indexes, views, constraints, triggers, stored procedures, and other database-specific constructs needed to store, retrieve, and delete persistent objects.

You will also work other developers optimizing in-application SQL statements as necessary and establishing best practices. You will help solve all database usage issues and come up with ideas and advice that can help avoid such problems in the future.

 

Responsibilities

– Data Modeling, Database design

– Object-Oriented Analysis and Design techniques

– System Architecture, including Database and System performance tuning, as well as hardware and network workload balancing

– Database Administration

– Understanding of the implementation language and environment

– Help write and optimize in-application SQL statements

– Ensure performance, security, and availability of databases

– Prepare documentations and specifications

– Handle common database procedures such as upgrade, backup, recovery, migration, etc.

– Profile server resource usage, and optimize and tweak as necessary

– Collaborate with other team members and stakeholders

 

Skills

Understanding of computer software, databases and programming

– Strong proficiency with different database types such as Relational, Key-value, Time Series, Document, Blob Store etc

– Skilled at optimizing large complicated SQL statements

– Knowledge of best practices when dealing with relational databases

– Capable of configuring popular database engines and orchestrating clusters as necessary

– Ability to plan resource requirements from high level specifications

– Capable of troubleshooting common database issues

– In-depth understanding of data management (e.g., permissions, recovery, security and monitoring)

– Excellent analytical and organization skills

– Familiar with tools that can aid with profiling server resource usage and optimizing it

– Proficient understanding of code versioning tools such as Git

 

Education and Experience

– Bachelor’s in Software Engineering, Computer Science or equivalent

– 4-5 years of work experience in professional environment