Description


Job Summary

Administer, develop, test, or demonstrate databases. Perform many related database functions across one or more teams or clients, including designing, implementing and maintaining new databases, backup/recovery and configuration management. Install database management systems (DBMS) and provide input for modification of procedures and documentation used for problem resolution and day-to-day maintenance.

Technical Skills Required

A DBA should possess deep technical knowledge of database internals, optimization techniques, and high availability setups. Key required skills include:

MySQL Skills
  • Proficiency in SQL and database normalization techniques.
  • Knowledge of MySQL architecture, storage engines (InnoDB, MyISAM).
  • Replication (Master-Slave, Group Replication, Galera Cluster).
  • Backup and recovery tools (mysqldump, Percona XtraBackup).
  • Query optimization and indexing strategies.
  • Performance tuning and troubleshooting (EXPLAIN, Optimizer).
  • Experience with HAProxy and ProxySQL for load balancing.
  • Scripting with Bash, Python, or Ansible.
MongoDB Skills
  • Strong understanding of NoSQL concepts and MongoDB architecture.
  • Experience with replica sets, sharding, and aggregation framework.
  • Query optimization and indexing (B-tree, Compound, TTL).
  • Data modeling for document databases.
  • Backup strategies with mongodump, mongorestore, and Ops Manager.
  • Security implementation (RBAC, LDAP, TLS/SSL encryption).
  • Monitoring with Cloud Manager or Prometheus/Grafana.
  • Automation using Python or Shell scripting.
PostgreSQL Skills
  • Deep knowledge of PostgreSQL architecture and advanced SQL features.
  • Experience with performance tuning (vacuuming, indexing strategies).
  • Replication techniques (Streaming Replication, Logical Replication).
  • Knowledge of partitioning and sharding strategies.
  • Experience with backup and recovery using pg_dump, pg_basebackup.
  • Security implementation (SSL, pg_hba.conf, role management).
  • PostgreSQL extensions such as PostGIS, pg_partman, and pg_stat_statements.
  • Scripting and automation using PL/pgSQL, Python, or Bash.

Key Responsibilities

  • Database Design and Architecture
    • Designing and implementing database structures that align with business needs.
    • Evaluating and selecting appropriate database technologies (SQL/NoSQL).
    • Planning for scalability and high availability solutions.
  • Performance Tuning and Optimization
    • Monitoring database performance and proactively addressing bottlenecks.
    • Implementing indexing strategies and query optimization techniques.
    • Managing workload distribution and resource allocation for optimal performance.
  • Backup and Recovery Management
    • Establishing backup strategies to prevent data loss.
    • Performing regular backup testing and disaster recovery drills.
    • Ensuring RPO (Recovery Point Objective) and RTO (Recovery Time Objective) compliance.
  • Security and Compliance
    • Implementing security policies to protect sensitive data.
    • Managing database access controls and user privileges.
    • Ensuring compliance with industry standards (e.g., GDPR, HIPAA).
  • Database Installation, Upgrades, and Patching
    • Installing and configuring database software (MySQL, MongoDb, PostgreSQL etc.).
    • Planning and executing database version upgrades and security patches.
    • Minimizing downtime during critical updates.
  • High Availability and Disaster Recovery
    • Implementing HA/DR solutions such as clustering, replication, and failover mechanisms.
    • Monitoring database health and ensuring redundancy in case of failure.
    • Defining disaster recovery plans and periodic testing.
  • Automation and Scripting
    • Developing automation scripts for routine tasks using SQL, Shell, or Python.
    • Implementing infrastructure-as-code (IaC) solutions where applicable.
    • Automating database deployments and change management processes.
  • Capacity Planning and Resource Management
    • Assessing current and future database storage and performance needs.
    • Working with infrastructure teams to optimize hardware and cloud resources.
    • Forecasting growth and preparing scalability plans.
  • Monitoring and Troubleshooting
    • Utilizing monitoring tools (e.g., Prometheus, Grafana, Nagios) to track database health.
    • Troubleshooting database issues and providing root cause analysis.
    • Implementing proactive alerting systems for potential failures.
  • Collaboration and Stakeholder Communication
    • Working closely with developers, system administrators, and business teams.
    • Providing technical support and guidance for database-related projects.
    • Documenting database processes, policies, and best practices.
  • Cloud Database Management (if applicable)
    • Managing cloud-based databases (AWS RDS, Azure SQL, GCP Cloud SQL).
    • Optimizing cloud cost and performance.
    • Implementing hybrid cloud solutions when required.
  • Auditing and Reporting
    • Conducting regular audits to identify potential risks and vulnerabilities.
    • Generating reports on database usage, health, and performance.
    • Assisting in business intelligence and analytics requirements.

Education

Any Graduate