Software engineer
Shane Moyo
Full stack engineer with 10+ years shipping production systems. I care about reliability and craft, and I want that work to matter where software meets hardware.
Portland, OR · most recently NerdWallet.
Mission fit
Why Stoke
I've had a deep passion for aerospace since I was a kid. It started with looking up at the sky and wondering how things fly, and it never went away. Alongside that I fell in love with software engineering, and my long-term dream has always been to bring those two together and work on systems that have real-world, physical impact.
I'm a full stack software engineer with over 10 years of experience building and scaling production systems, most recently at NerdWallet where I've focused on high-impact products and platform reliability.
I'm motivated by solving problems under real constraints, where performance and reliability both matter, and I take pride in owning problems end-to-end.
More recently I've been leaning into modern AI tooling as a core part of how I build. It's expanded what I can take on and significantly increased my iteration speed, while still relying on strong fundamentals and engineering judgment.
Stoke Space is especially exciting to me because it sits at the intersection of everything I care about: aerospace, software, and building systems where correctness and performance truly matter.
Builds
Example projects
Two live builds that reflect how I think about the kinds of problems Stoke Space works on: LLM-backed tooling and parts management workflow.
Boltline RAG demo
LiveA retrieval-augmented generation UI showing how I approach LLM-backed tools: clear UX, grounded answers, and pragmatic engineering.
Line Forge
LiveLine Forge is my own app: an attempt to build something very similar in workflow and scope to Boltline, Stoke's trademarked parts-management product. It is independent and not affiliated with Stoke. Open it to browse parts and see how I approached the same kind of problem.
Work
Experience
Tap a role to expand or collapse highlights.
May 2022 to Present
Full Stack Software Engineer
NerdWallet · San Francisco, CA
- Lead end-to-end development of high-impact features from design through deployment, with a focus on speed, quality, and reliability.
- Architect config-driven, server-controlled systems (GraphQL + feature flags) to decouple product iteration from native app release cycles and legal review constraints.
- Build and maintain scalable microservices and APIs using Node.js, Express, NestJS, Prisma, GraphQL, and AWS Lambda.
- Develop responsive, accessible interfaces across web and mobile using React, React Native, Redux, and TypeScript.
- Enable parallel development across teams by writing detailed technical specs and breaking work into clear, independent units.
- Improve production reliability through monitoring, logging, and alerting (Datadog), shifting the team toward proactive system health.
- Partner closely with Product, Design, and Platform teams to refine requirements, unblock development, and deliver under ambiguity.
- Mentor engineers through pairing and code reviews, raising team velocity and code quality.
May 2021 to May 2022
Full Stack Software Engineer
iFIT · Logan, UT
- Owned full development lifecycle from roadmap to release, coordinating across engineering, product, and design.
- Built and maintained scalable full-stack features across web and connected fitness platforms.
- Developed and tuned recommendation models using AWS Personalize and SageMaker to improve engagement and retention.
- Contributed to personalization systems that enhanced user experience through data-driven insights.
May 2020 to May 2021
Full Stack Software Engineer
Boulder Care · Portland, OR
- Built HIPAA-compliant healthcare applications using React, Redux, TypeScript, Express, GraphQL, Docker, and MongoDB.
- Developed patient-facing features focused on usability, engagement, and reliability.
- Partnered with product and design to deliver user-centered healthcare solutions.
March 2018 to March 2020
Software Engineer
Cvent · Portland, OR
- Led development of redesigned event management UI using React, Ember, and Ruby on Rails.
- Built scalable front-end architectures with strong test coverage for complex workflows.
- Migrated legacy asset pipeline to Webpack, improving build performance and deployment efficiency.
- Developed secure authentication systems using Node.js, Express, MongoDB, and JWT.
- Mentored junior engineers through pairing and code reviews.
March 2016 to March 2018
E-Commerce Developer
Bridge & Burn · Portland, OR
- Developed and maintained Shopify-based e-commerce applications with custom features and integrations.
- Improved site performance and user experience through front-end enhancements and debugging.
- Analyzed user behavior and ran A/B tests to optimize conversion flows.
- Implemented analytics tracking (Google Analytics, GTM) to drive data-informed decisions.
Stack
Technologies
Frontend
- React
- Next.js
- TypeScript
- React Native
- Redux
- Vue
- Angular
- HTML5
- CSS
- webpack
Backend & APIs
- Node.js
- Express
- Nest.js
- FastAPI
- Django
- GraphQL
- REST
- WebSockets
- .NET
- Java
- Maven
- Gradle
Data & platform
- PostgreSQL
- MS SQL
- MongoDB
- Prisma
- AWS
- AWS Lambda
- Docker
- Jenkins
- Datadog
Quality & process
- Jest
- Playwright
- Git
- Jira
- Scrum (PSM I & II)
Practice
How I work
How I approach complex delivery — tap a section to read more.
I remove bottlenecks at the system levelSystems · iteration
One of the most valuable things I do is identify where teams are losing speed and then redesign the system around that constraint.
A strong example was a native onboarding flow I built where iteration was being slowed down by multiple layers at once: design handoff, legal review, mobile release cadence, and slow user adoption of app updates. That made the path from product idea to real user feedback much slower than it needed to be.
Instead of treating that as unavoidable, I redesigned the flow as a config-driven system. The core experience shipped once, while things like copy, step ordering, and feature inclusion were controlled through GraphQL and feature flag metadata. That let product and legal make changes without waiting on a new mobile release, and it let us run experiments much faster.
The result was not just a successful feature launch, but a better operating model. We reduced iteration latency, lowered production risk, and created a pattern that was reused across other features.
I create structure when things are still unclearAmbiguity · contracts
I'm comfortable moving in ambiguous environments, but I do not believe ambiguity should become an excuse for stalled execution.
On one major dashboard redesign, the frontend experience depended on backend aggregation logic that was still being defined. Rather than waiting for everything to be finalized, I worked with stakeholders to define the API contract early, shaped the GraphQL schema, and thought through edge cases like partial data, loading states, and failure modes.
To keep the team moving, I introduced mocks and stubs that mirrored the expected contract so frontend and backend development could proceed in parallel. I also broke the work into smaller, clearly owned units so multiple engineers could contribute without stepping on each other.
That approach kept momentum high and led to a cleaner, more extensible system. In situations like that, I focus on creating enough structure that the team can move confidently before every detail is fully settled.
I own reliability all the way into productionProduction · ownership
I care a lot about whether a system works reliably in the real world, not just whether the implementation looks good in development.
During a high-stakes launch involving a third-party financial integration, we ran into intermittent backend issues at the same time that backend team capacity had dropped. Even though my primary role was on the frontend, I took ownership of understanding the issue end to end because correctness and consistency really mattered.
I traced requests through the client, GraphQL layer, and downstream integration, added targeted logging and observability, and treated the problem as a system-level debugging exercise rather than a quick patch. Once we isolated the issue, I helped validate the fix and also strengthened the monitoring around that part of the system so we could detect similar issues faster in the future.
We hit the launch date, but just as importantly, we left that area of the system in a much more observable and trustworthy state.
I design work so teams can move faster togetherVelocity · clarity
A lot of delivery speed comes down to how the work itself is designed.
Across several projects, I noticed that teams were losing time not because people were not strong, but because the work was not broken down in a way that supported parallel execution. Engineers would get blocked waiting on clarification, or different efforts would collide because ownership and boundaries were not explicit enough.
I started treating work decomposition as a core part of engineering leadership. I break projects into smaller, well-scoped units with clear interfaces, dependencies, and acceptance criteria. I think carefully about what can be built independently, what should be stubbed or mocked, and how to minimize shared dependencies so multiple engineers can move at once.
That approach has consistently improved team velocity, reduced regressions, and created a more scalable way of working. One of the highest-leverage things an engineer can do is design the work in a way that lets the whole team execute smoothly.
I stay ahead of new tools and help others use them wellAI · enablement
I'm deeply interested in how AI is changing the way software gets built, and I've made that a real part of how I work.
Over the past year, I've gone deep on tools like Cursor, Claude, and retrieval-augmented generation, not just as experiments, but as practical workflow accelerators. That has changed how I write specs, how I prototype, and how I think about documentation. I increasingly write technical artifacts in a way that works well for both humans and AI-assisted implementation.
I've also worked to make that useful beyond just my own workflow. I set up a recurring AI session, created a cross-functional Slack channel for sharing use cases, and became a go-to person for AI-related questions across the company. I've helped design partners use Claude to build better prototypes, worked with data partners on faster dashboard creation in tools like Amplitude and Datadog, and built a lightweight RAG system that helps engineering do an initial pass on legal and compliance questions before involving legal directly.
The part I enjoy most is not just learning new tooling, but helping turn emerging capabilities into practical leverage for teams.
Background
Education & certifications
December 2020
B.S. Mathematics
Portland State University · Portland, OR
Certifications
Professional Scrum Master I (PSM I)
Scrum.org · June 2024 · Portland, OR
Professional Scrum Master II (PSM II)
Scrum.org · June 2024 · Portland, OR
Reach out
Contact
Portland, OR
- Phone
- (503) 547-3291
- s.moyo.pdx@gmail.com