JOB DESCRIPTION:
The Senior Engineer - Database is a critical role in ensuring the performance, scalability, security, and resilience of our databases. You will work closely with Software Engineers, Infrastructure Engineers, CI/CD Engineers, Data Warehouse Team, Customer Success Teams, and Analytics Team to design, deploy, and manage robust database systems.
This role requires deep technical expertise in database administration, performance tuning, automation, and cloud-based database solutions. You will be responsible for driving best practices, optimizing database performance, ensuring security compliance, and contributing to the architecture of mission-critical systems.
KEY RELATIONSHIPS:
- Software Engineers.
- Infrastructure Engineers.
- CI/CD Engineers.
- Data Warehouse Team.
- Customer Success Teams.
- Analytics Team.
CORE RESPONSIBILITIES:
- Database Administration: Manage and maintain SQL and NoSQL databases to ensure availability, security, and performance.
- Performance Tuning & Optimization: Analyze database queries, indexes, and performance bottlenecks, and implement solutions for efficiency.
- Scalability & High Availability: Architect and maintain scalable and fault-tolerant database solutions using replication, clustering, and partitioning techniques.
- Automation & Scripting: Automate database maintenance tasks using Python, Bash, Terraform, or Ansible to improve efficiency and reduce manual effort.
- Backup & Disaster Recovery: Develop and manage reliable backup and restore strategies, ensuring business continuity and minimizing data loss risks.
- Security & Compliance: Implement and enforce database security best practices, including role-based access control (RBAC), encryption, and compliance with data protection laws.
- Observability & Monitoring: Set up proactive monitoring and alerting for database health, performance, and capacity planning using tools like Prometheus, Datadog, Grafana, or New Relic.
- Cloud & On-Premise Database Management: Support both cloud-native (AWS RDS, Aurora, DynamoDB, Google Cloud Spanner, etc.) and self-hosted database solutions.
- Incident Response & Troubleshooting: Act as a subject matter expert in diagnosing and resolving complex database issues in production environments.
- Documentation & Knowledge Sharing: Maintain up-to-date documentation and contribute to internal knowledge bases to ensure smooth onboarding and operational excellence.
QUALIFICATIONS & EXPERIENCE:
- 5+ years of hands-on experience in database administration, engineering, or architecture.
- Expertise in relational database management systems (RDBMS) such as MySQL, PostgreSQL, SQL Server, or Oracle.
- Experience managing NoSQL/NewSQL databases such as MongoDB, Cassandra, CockroachDB, or Google Spanner.
- Strong knowledge of query optimization, indexing, caching strategies, and database schema design.
- Experience with database replication, clustering, sharding, and failover strategies.
- Proficiency in Linux-based environments and shell scripting for database operations.
- Understanding of networking concepts (TCP/IP, DNS, HTTP/HTTPS, security best practices).
- Experience implementing database security measures, auditing, and compliance (e.g., GDPR, SOC2, PCI DSS).
- Hands-on experience with Cloud Database Services (AWS RDS, Aurora, Google Cloud SQL, Azure SQL, etc.).
SKILLS:
- Database Administration for SQL and NOSQL environments
- Linux Administration.
- Proficiency in SQL language.Proficiency in open source database engines and tools.
- Proficiency in cloud database computing.
go to method of application »
Role Summary:
As a Senior Software Engineer, you work in a team that owns the design, development, and operations for mission-critical applications of the payments business. You are responsible for developing backend applications using best practices.
Key Responsibilities:
- Delivering complete features and maintaining existing ones.
- Design and implement scalable distributed systems using Kubernetes, Docker, and other tools in the Cloud Native landscape.
- Build configuration and deployment assets required to deploy and run the distributed applications.
- Work with the frontend and API engineers to define RESTFul API Specifications.
- Creating self-contained, reusable, and testable microservices and components.
- Participating in Sprint planning and tracking work items
- Work well with technical and non-technical people to deliver high-value results
- Ensure that all written code and architecture is high quality, scalable, and performant
- Take initiative in refactoring and keep things simple
- Take full ownership of a feature set, from the first discussion to going live.
- Using test-driven development to write well-tested code.
- Fixing bugs fast and taking your time to solve hard problems well.
- Prototyping new ideas to help with initial feature definition, participating in architecture and code reviews.
- Ability to communicate with team members and stakeholders - especially in writing
Educational Requirements, Skills and Qualifications:
- Bachelor's degree in Information Technology, Software Engineering, Computer Science or related field
- 5+ years of industry experience building and operating large-scale, highly available distributed systems.
- 7y+ Experience with Java on large-scale projects.
- Strong knowledge of building cloud-native applications using Java and Springboot.
- Strong knowledge of data structures, algorithms, operating systems, and distributed systems fundamentals.
- Highly skilled in unit and automated testing in Springboot.
- Experience building multi-tenant distributed SAAS applications
- Experience with CI/CD.
- Experience with performance analysis and optimization in Java is a strong plus.
- Proven software architecture experience.
- Ability to understand and break down large features into complete solutions.
- Excellent interpersonal skills and ability to work well with all levels of engineers and other disciplines.
- Proficient, autonomous, and rigorous behavior.
- Bonus Points: You’ve mentored teammates on new ways to deepen their technical craft