Principal Software Engineer, Back End
Cdbabyjobs · Remote · 2026-08-13
About this role
About Us
CD Baby is a globally recognized leader in the music industry and the first platform to offer artists direct distribution to their fans. Our technology organization has a deep history and a strong foundation, built by long-tenured, dedicated professionals. As we navigate the next era of music technology, we are committed to modernizing our core systems, fostering an agile culture, and leveraging cutting-edge platforms to better serve our artists, partners, and fans worldwide.
The Role
We are seeking a Principal Software Engineer to be the technical leader of back end engineering for CD Baby’s flagship customer-facing software: the member-facing application our artists use to distribute their music, get paid, and understand their audiences, and the .com marketing site that brings new artists into the platform. This is a hands-on, individual-contributor role with broad technical authority and informal mentorship responsibility — the kind of engineer who raises the team’s bar by example.
In the near term, you will help us complete a full platform migration from on-premises infrastructure to the AWS cloud — the foundation our customer experience will be built on for years to come. Beyond that milestone, your defining technical mandate is to lead the architectural evolution of our customer-facing stack from a .NET monolith into a modular, service-oriented architecture built on Python and its ecosystem. Practically, that means writing primarily Python for new services while operating and evolving the existing .NET codebase through the transition.
Equally important is the product mandate. CD Baby is a working software product that artists rely on daily. You will partner with a cross-functional agile team to deliver a steady cadence of new features and improvements — so every cycle of modernization is paired with real, shipped customer value.
This is a role for an engineer who is energized by both the discipline of shipping software customers depend on every day, and the craft of redesigning the system underneath.
What You’ll Own
Architecture & Technical Strategy
• Define and drive the multi-year roadmap that takes CD Baby’s customer-facing platform from a .NET monolith to Python-based services. Sequence the work so each phase delivers value on its own, build alignment around the plan across engineering and product, and revise it as we learn.
• Find and design the service boundaries inside the monolith, aligned to the core domains of the product — distribution, royalties, analytics, catalog management, account. Define what each service owns and where its operational responsibilities begin and end. Getting these seams right is among the most consequential technical judgment in the role.
• Establish schema-first API design as standard practice — service contracts defined in Protocol Buffers, with client and server code generated from those contracts, and gRPC as the transport for inter-service communication.
• Set the strategic technology direction. Python and its ecosystem — Django, FastAPI, and the frameworks and libraries around them — are our primary investment for new services, with other languages (Go, Node.js, and others) reserved for where a specific service warrants it. .NET and SQL Server continue to power the platform through the transition. Define the Python service patterns the team will build against, and choose data stores that fit each workload rather than defaulting to a single relational store.
• Own the application data model end-to-end, setting ORM patterns, schema design, and data access conventions that the back end team operates by.
• Partner with Data Engineering on the pipelines that deliver platform data into Snowflake, keeping analytics and reporting first-class outputs of the models you design.
Hands-On Delivery
• Write production code. This is a Principal IC role; your influence comes from the work as much as from the design.
• Help carry our platform cloud migration across the finish line, ensuring the back end matches the quality of the front end work already underway.
• Establish and uphold engineering standards — CI/CD, automated testing, observability, performance, security — across the back end. Set the bar by writing the code that defines it.
• Run a continuous-delivery cadence: every product cycle on distribution, royalty splits, analytics, or catalog tooling is also an opportunity to modernize a slice of the stack. You’ll plan that interleaving with product and the team so the platform gets better every quarter while we keep shipping for customers.
Mentorship & Team Craft
• Be the kind of senior engineer others learn from by watching. We believe engineering is learned through mentorship and apprenticeship. You will set the tone for back end craftsmanship on the team and bring engineers up by working alongside them.
• Collaborate closely on a cross-functional engineering team that pairs back end engineering with front end, SDET, data engineering, design, and product management. Your day-to-day work happens here, with these people.
• Partner across organizational boundaries with infrastructure, internal tools, and the broader data engineering org. The most consequential architectural decisions happen at those seams.
Experience
• 10+ years of back end software engineering experience, including significant time in technical leadership roles — Principal, Staff, or equivalent IC.
• Expert-level fluency in Python and its ecosystem (Django, FastAPI, or similar), with current production experience building services at scale.
• Experience with schema-first API design using Protocol Buffers and gRPC for inter-service communication.
• Demonstrated track record of decomposing a monolithic application into services in production, while keeping the product operational throughout.
• Strong data modeling and ORM experience, including schema design, migrations, and the trade-offs between ORM convenience and query performance at scale.
•…
Skills asked for
- agile
- aws
- .net
- python
- grpc
- django
- fastapi
- go
Similar jobs
- Principal People Business Partner, SoftwareAgilityrobotics · Remote
- Senior Principal Software Engineer, Support TechToast · Remote
- Senior/Principal Software Engineer (Python)Navapbc · Remote
- Principal Software EngineerJobber · Remote
- Staff/Principal Software Engineer-Windows Endpoint AgentCloudzero · Remote
- Principal Software Engineer, Tech Lead, RetailToast · Remote
- Principal Software EngineerToast · Remote
- Principal Software Engineer - PA058Zoominfo · Remote
Your next role is already in here.
Search live openings from thousands of employers, save the ones worth a second look, and let JobBob keep watch for the rest.