---
title: "Choose a modern technology stack"
source: USDS Digital Services Playbook
source_url: https://github.com/usds/playbook
licence: CC0-1.0
domain: product-and-design
subdomain: usds-playbook
date_added: 2026-04-25
---

The technology decisions we make need to enable development teams to work efficiently and enable services to scale easily and cost-effectively. Our choices for hosting infrastructure, databases, software frameworks, programming languages and the rest of the technology stack should seek to avoid vendor lock-in and match what successful modern consumer and enterprise software companies would choose today. In particular, digital services teams should consider using open source, cloud-based, and commodity solutions across the technology stack, because of their widespread adoption and support by successful consumer and enterprise technology companies in the private sector.

### Checklist
1. Choose software frameworks that are commonly used by private-sector companies creating similar services
2. Whenever possible, ensure that software can be deployed on a variety of commodity hardware types
3. Ensure that each project has clear, understandable instructions for setting up a local development environment, and that team members can be quickly added or removed from projects
4. [Consider open source software solutions](https://www.obamawhitehouse.gov/sites/default/files/omb/assets/egov_docs/memotociostechnologyneutrality.pdf) at every layer of the stack

### Key Questions
- What is your development stack and why did you choose it?
- Which databases are you using and why did you choose them?
- How long does it take for a new team member to start contributing?
