Job Description: We are seeking a highly skilled and motivated Postgre SQL Database Administrator to manage our Postgre SQL database instances and related infrastructure. The DBA will be responsible for monitoring, maintaining, and optimizing Postgre SQL database performance, focusing on leveraging Postgre SQL statistics and other tools to ensure optimal performance and uptime. Key Responsibilities:
Database Management:
Oversee the installation, configuration, and management of multiple Postgre SQL database instances.
Manage database clusters across various servers, ensuring high availability, fault tolerance, and redundancy.
Performance Monitoring:
Regularly monitor Postgre SQL system performance using tools like pg_stat_activity, pg_stat_statements, and other Postgre SQL system views.
Monitor key performance indicators (KPIs) such as query execution time, disk I/O, CPU utilization, memory usage, and cache hit ratios.
Optimization:
Identify slow queries, bottlenecks, and performance issues by analyzing system statistics.
Optimize database performance through query tuning, indexing strategies, partitioning, and configuration adjustments (e.g., adjusting shared buffers, work_mem, maintenance_work_mem, etc.).
Propose and implement index optimization, table partitioning, and other techniques to enhance performance.
Maintenance and Upgrades:
Manage routine maintenance tasks such as database backups, restores, vacuuming, and reindexing.
Ensure databases are regularly vacuumed and analyzed to prevent bloat and maintain statistics accuracy.
Plan and perform Postgre SQL version upgrades and patches.
Security and Compliance:
Ensure database security by managing access controls, user permissions, and roles.
Monitor for unauthorized access and ensure compliance with data protection regulations.
Implement and maintain data encryption, replication, and disaster recovery strategies.
Automation and Scripting:
Automate database monitoring and maintenance tasks using tools like cron, pg_cron, or custom scripts.
Write scripts to monitor database health, alerting the team of potential issues (e.g., long-running queries, deadlocks, connection pool exhaustion).
Capacity Planning:
Forecast database growth and ensure the infrastructure is ready to handle increased traffic and data volumes.
Manage database scaling (vertical and horizontal) and storage allocation.
Troubleshooting:
Investigate and resolve database-related performance issues and outages in a timely manner.
Analyze and resolve deadlock issues, lock contention, and long-running queries.
Collaboration:
Work closely with the development and operations teams to support new features, database schema changes, and query optimizations.
Provide guidance to developers on best practices for writing efficient SQL queries and database usage patterns.
Qualifications:
Education: Bachelor's degree in Computer Science, Information Technology, or related field (or equivalent experience).
Experience:
3+ years of experience as a Postgre SQL DBA.
Hands-on experience with Postgre SQL system views (pg_stat_activity, pg_stat_statements, pg_stat_user_tables, etc.).
Familiarity with Postgre SQL configuration tuning and maintenance tasks such as VACUUM, ANALYZE, REINDEX.
Technical Skills:
Proficient in Postgre SQL query optimization techniques and index management.
Solid understanding of Postgre SQL architecture and internals (MVCC, WAL, replication, etc.).
Experience with monitoring tools like pg Admin, pg Bouncer, Prometheus, Grafana, or similar.
Job Type: Full-time Pay: ₹500,000.00 - ₹800,000.00 per year Experience: