Upstart is a leading AI lending marketplace dedicated to reducing the cost and complexity of borrowing for all Americans. As a Principal Software Engineer, you will define the technical direction for the Unsecured Installments product, collaborating with various teams to build reliable and scalable systems.
Responsibilities:
- Design and evolve the core backend systems that power Upstart’s unsecured installment lending product
- Lead architecture and technical direction across complex domains such as underwriting, pricing, offer generation, funding, servicing, and borrower lifecycle workflows
- Translate product, economic, and operational requirements into scalable technical systems that balance speed, reliability, and long-term maintainability
- Partner closely with machine learning engineers and data teams to productionize models and integrate decisioning systems into real-time borrower experiences
- Improve the systems and services behind key borrower and partner flows, including experimentation, repricing, and moments of borrower friction
- Influence architectural decisions across team boundaries, helping connect the Unsecured Installments roadmap with Upstart’s broader lending platform and shared infrastructure
- Raise the bar for engineering quality through strong API design, thoughtful domain modeling, observability, testing, and operational excellence
- Mentor other engineers and serve as a technical leader who can bring clarity, drive alignment, and help teams execute through ambiguity
- Contribute to how the team uses AI in development workflows and product capabilities, with a pragmatic view of where it can create meaningful leverage
Requirements:
- Bachelor's degree in Computer Science, Engineering, Mathematics, or a related field (or equivalent practical experience) and 8+ years of software engineering experience
- Strong experience designing distributed systems and event-driven architectures, including real-world handling of retries, idempotency, fault tolerance, and failure modes
- Proficiency in an object-oriented language such as Python, Java, Kotlin, C#, or Ruby, with deep experience building APIs and service-oriented backend systems
- Track record of leading technical design and delivery for large-scope, business-critical systems
- Ability to work effectively in ambiguous environments where product requirements, operating constraints, and system boundaries evolve over time
- Strong cross-functional collaboration skills and comfort working closely with product, analytics, compliance, risk, and other business stakeholders
- Experience influencing technical direction beyond a single team, including driving alignment across engineers with different priorities and constraints
- Active use of AI tools in engineering workflows, with a thoughtful perspective on how AI is reshaping software development
- Exceptional communication and collaboration skills, with the ability to explain complex tradeoffs and advocate for high-impact solutions
- Experience in fintech, lending, payments, or other regulated financial systems
- Familiarity with unsecured installment lending, offer and pricing systems, borrower acquisition flows, funding, or servicing platforms
- Experience building systems that support experimentation, repricing, or other dynamic product and decisioning workflows
- Background working with machine learning-driven underwriting, pricing, or risk systems
- Experience operating as a technical leader on small or midsized teams with broad product ownership
- Hands-on experience leveraging generative AI in product features or internal engineering workflows
- Passion for building products that expand access to credit and improve financial outcomes for consumers