1. PostgreSQL Database Design & Development
- Design, develop, and maintain scalable PostgreSQL database schemas, including tables, indexes, views, and materialized views.
- Write and optimize complex SQL queries, stored procedures, and functions using PL/pgSQL.
- Implement data modeling best practices to support transactional and analytical workloads.
2. Performance Tuning & Optimization
- Monitor and analyze PostgreSQL performance using tools like pg_stat_activity, EXPLAIN ANALYZE.
- Resolve performance bottlenecks, including slow queries, index inefficiencies, and vacuuming issues.
- Analyze and mitigate lock waits and deadlocks using PostgreSQL logs and diagnostic tools.
3. Monitoring & High Availability
- Monitor the health of PostgreSQL databases and associated application/ETL servers in both cloud environments.
- Implement and maintain high availability solutions using streaming replication, logical replication, or tools like Patroni.
- Set up and tune alerting thresholds for key health indicators (e.g., connection limits, replication lag, disk usage).
4. Data Integration & ETL
- Design and manage ETL pipelines using Unix Shell Scripts, or native PostgreSQL features (e.g., COPY ).
- Ensure data consistency and integrity across systems during ingestion and transformation processes.
5. Environment Management & Deployment
- Perform periodic refreshes of DEV/QA/UAT/pre-production environments using sanitized production backups.
- Participate in planning and executing production deployments in replicated PostgreSQL environments.
- Support infrastructure capacity planning and scaling strategies for different environments.
6. Collaboration & Launch Support
- Collaborate with service providers and internal teams to deliver end-to-end solutions for enterprise initiatives.
- Support the launch of PostgreSQL-backed applications in new regions/platforms with pre- and post-launch data validation and analysis.
Expected Skills
- Should have 3-5 years of experience in software development.
- Hands-on experience in the following technologies:
- Database: PostgreSQL, Oracle, Snowflake, MySQL, DB2
- Languages: PL/pgSQL, SQL, Shell Scripting, Python
- DB Development: Workbench/Toad
- Version controlling: GIT