Senior Software Engineer, Backend (Online Storage)
A
AffirmFinancial technology
Location: Remote USFull-TimeSenior
Salary173,000 - 233,000 USD per year
Apply NowOpens the employer's application page
Job Details
- Experience
- 5+ years of experience as a software engineer
- Required Skills
- AWSPostgreSQLPythonKotlinKubernetesMySQLTerraform
Requirements
- Have 5+ years of experience as a software engineer.
- Have experience designing, developing, and launching backend systems at scale using technologies such as Python, Kotlin, AWS, MySQL, Terraform, and Kubernetes.
- Have hands-on experience with large-scale database deployments in production.
- Have expertise in distributed databases and technologies such as MySQL, TiDB, Postgres, Spanner, Vitess, or CockroachDB; MySQL and TiDB are preferred.
- Understand distributed database architecture, data modeling, and performance tuning, including SQL tuning and optimization.
- Have expertise in database benchmarking, load testing, and capacity planning.
- Be familiar with connection poolers and proxies such as ProxySQL, RDS Proxy, PgBouncer, or PgDog.
- Have built database control-plane or automation tooling for provisioning, failover, upgrades, or schema migrations, ideally on Kubernetes.
- Have executed zero-downtime migrations and major-version upgrades on production databases, and built CLI tooling or runbooks to make procedures repeatable.
- Understand Kubernetes networking, service discovery, and TLS well enough to debug service-to-database connection and failover problems.
- Be able to define technical plans for significant features or system components and produce high-quality, understandable code.
- Have a Bachelor’s degree in a related field or equivalent practical experience.
Responsibilities
- Build and operate control planes for large-scale distributed SQL databases, automating provisioning, failover, backups, and upgrades.
- Design and execute reliability-focused schema and data migrations across multi-tenant database clusters with zero downtime.
- Own and tune the Kubernetes networking stack connecting services to storage, including connection proxies such as ProxySQL.
- Own and deliver quarterly team goals, leading engineers through ambiguous and open-ended problems.
- Collaborate with product management, design, and analytics on ideation, technical constraints, risks, and trade-offs.
- Identify and lead resolution of project, process, technology, and business issues.
- Create and monitor metrics, escalate operational issues, and support on-call and keep-the-lights-on work.
- Set and improve code review and design standards, and share practices through writing and tech talks.
- Provide feedback and guidance to develop team members.
View Full Description & ApplyYou'll be redirected to the employer's site