Find Jobs
Find Jobs Near You – Available Work in Your Location
Senior Software Engineer II - Streaming and Durability
Choose a Location
This role is available in multiple locations. Pick one to apply.
Career Insights for Software Developer / Engineer
See where this job fits in the broader career landscape. Knowing your career path helps you see what's possible from here.
Scorecard
Based on New York data
Review key factors to help you decide if this role fits your goals. How is this calculated?
What they do
A Software Developer or Engineer designs or improves computer software. Oversees the entire software development process. Analyzes customer or user needs, designs programs, writes code or instructs computer programmers, tests design, and documents programs. May assist with upgrades or maintenance. May specialize in the design of computer applications or computer systems.
$130,087 / year median in New York
-3% projected decline
Job Description
- Design and operate the database and caching fleet (RDS/Aurora PostgreSQL, ElastiCache Redis/ValKey, DynamoDB) that underpins Compass's core products, making decisions about replication, failover, capacity, and engine strategy that affect every team in the company.
- Build multi-tenant data isolation into Compass's data layer from the ground up, shipping SDKs in Go, Java, and Python that enforce tenant-safe access patterns so product engineers can move fast without risking cross-tenant data exposure.
- Own production database upgrades at fleet scale, coordinating engine version bumps and Terraform state mutations across hundreds of clusters with zero customer-facing impact.
- Build and scale Kafka/MSK streaming infrastructure, the connective tissue between Compass services, including topic architecture, consumer patterns, and blue/green deployment strategies.
- Develop deep observability into the data layer, including SLI dashboards, tenant-dimensioned telemetry, and real-time performance insights that let the team (and the company) understand system behavior before customers do.
- Partner directly with product and platform teams to assess database readiness for scaling events, migrate workloads onto golden-path infrastructure, and resolve the hardest production incidents in the stack. Basic Qualifications
- 5+ years of experience building and operating distributed systems, with depth in at least one major managed database (PostgreSQL or similar) at production scale in AWS.
- You've built shared tooling (SDKs, client libraries, platform APIs), and you understand what it takes to make infrastructure accessible and safe for engineers who aren't infrastructure specialists.
- You think in trade-offs, not absolutes. You can articulate why you'd choose a soft application-enforced boundary over a hard infrastructure lock and when that calculus changes.
- You write Go (or can ramp quickly) and you're comfortable in Terraform, Kubernetes, and IAM-heavy AWS environments.
- You've led cross-team operational programs ,including change management, migration coordination, and rollback planning, where the blast radius of a mistake extends well beyond your own team. Preferred Qualifications
- You've worked on multi-tenant isolation problems such as key prefixing, row-level security, and
RBAC/ACL
models and have opinions about where application-layer enforcement breaks down.- You've operated Kafka/MSK at scale and dealt with the hard parts: consumer lag, partition rebalancing, cross-account IAM auth.
- You've built or contributed to observability platforms, specifically for database and cache monitoring.
Compensation:
The base pay range for this position is $176,000- 196,100; however, base pay offered may vary depending on job-related knowledge, skills, and experience.