Software Development Engineer II (Full - Stack)
Summary
SDE-2 full-stack engineer at an early-stage fintech building a financial-advisory platform. You own features end-to-end with a backend center of gravity: Python services and APIs on AWS (ECS, RDS/Postgres, Lambda), financial data integrations (Account Aggregator, CAS, MFCentral), plus hands-on React/Next.js and React Native frontend work.
We're hiring an SDE-2 (Fullstack) to help build the product that runs people's financial lives. We're a small engineering team that deliberately values quality over headcount, which means the work you ship has weight, your decisions are visible, and there's nowhere for good or bad engineering to hide. As an SDE-2, you'll own features end-to-end, with your center of gravity on the backend—the Python services, APIs, and AWS infrastructure the product runs on—while staying hands-on across the React and React Native frontends on top. You'll build systems that are scalable, highly available, and fault-tolerant, working directly with product, design, and fellow engineers to turn messy financial problems into software people can actually use.
Responsibilities:
- Design, build, and own APIs and backend services in Python that are scalable, highly available, and fault-tolerant and hold up under real financial data and load.
- Own data modeling and integrations: work with the Account Aggregator framework and other financial data rails (CAS parsing, MFCentral, broker, and AMC integrations) to bring a client's complete financial picture into the product.
- Build and operate the infrastructure your services run on; we're on AWS (EC2, ECS, RDS/Postgres, S3, Lambdas, DynamoDB); and treat reliability, observability, and security as part of the feature, not an afterthought.
- Ship features end-to-end: when work reaches the React/Next.js or React Native frontends, you take it there too; the backend is your center of gravity, but you won't be boxed into one layer.
- Partner closely with product, design, and fellow engineers; challenge requirements and design decisions when they don't hold up, and ship better work because of it.
- Keep the codebase healthy: right-size your work into reviewable increments, and review others' code with the same rigor you'd want on your own.
- Drive your own improvements: performance fixes, refactors, tooling, and developer experience, without waiting to be assigned them.
You'll work across our full product surface:
- Advisor Portal (Internal): The web app advisors use to onboard clients, build financial plans, and manage client interaction. Dense, data-heavy, and performance-sensitive; this is where advisors spend their day.
- Client Web App: Where clients see their full financial picture, track goals, and engage with their plan and advisors. Correctness and trust are non-negotiable here; this is people's money.
- Mobile App: A React Native experience for clients on the go. You'll help shape its architecture, shared component patterns, and release pipeline as it scales.
Requirements:
- 4+ years in a software engineering role, with real depth on the backend, building APIs and services in Python that run at scale.
- Strong fluency in Python and solid TypeScript; you own backend systems, and you're comfortable moving across the stack rather than staying on one side of it.
- A solid foundation in backend engineering: API design, data modeling, relational databases (Postgres), and reasoning clearly about scalability, reliability, and failure modes.
- Comfort with cloud infrastructure: we run on AWS (ECS, RDS/Postgres, S3, Lambdas, and friends) and have an understanding of how your code actually runs in production.
- Real frontend experience with React (and Next.js ) / React Native, enough to own a feature through the UI when it needs it, even though the backend is your center of gravity.
- High ownership. You don't wait to be told exactly what to build; you find the problem, understand it, propose a direction, get buy-in, and ship it.
- Clear, direct communication. You can explain a technical trade-off to another engineer, a designer, or a non-technical advisor, and adjust your framing for each.
- Care about correctness. You think about edge cases, failure modes, and what happens to a user's money if something breaks before it reaches review.
- Comfort with ambiguity. Early-stage product means messy briefs, shifting priorities, and the occasional wrong turn.
