Architect For Startups
AWSOfficialPublished by AWS
- Skill
- Guidelines
- Cloud and DevOps
- Apache-2.0
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
Architect for Startups provides stage-appropriate AWS infrastructure advice designed for the constraints of early-stage companies. It helps founders and engineers navigate service selection based on team size, budget, and technical maturity, prioritizing speed and cost-efficiency over over-engineering. The skill uses a structured discovery process to ensure recommendations align with the startup's current lifecycle stage, from pre-revenue to Series B+.
What it does
- Provides stage-specific AWS service recommendations based on team size and runway.
- Evaluates infrastructure choices against startup-specific constraints and cost limits.
- Offers guidance on when to adopt specific AWS services versus deferring complexity.
- Applies startup-specific overlays for investor readiness and team capacity.
- Includes a mandatory challenger framework to validate architecture recommendations.
- Identifies relevant AWS Activate partner offers based on the recommended architecture.
When to use it
- When you need guidance on choosing AWS services for a non-agent workload.
- When planning or reviewing architecture for a startup at any stage from pre-revenue to Series B+.
- When you need to optimize infrastructure costs or stretch AWS credits.
- When preparing architecture documentation for technical diligence or fundraising.
Advantages
- Prevents premature optimization by focusing on the right architecture for the current stage.
- Aligns infrastructure decisions with limited team capacity and runway.
- Provides clear triggers for when to graduate to more complex services.
- Ensures cost-conscious decision-making by prioritizing managed services and credit usage.
Usage examples
- “We are a seed-stage startup with 2 engineers and limited credits. Should we use ECS or Lambda for our backend?”
- The agent will recommend Lambda for its cost-effectiveness and lower operational overhead at the seed stage, explaining why ECS is deferred until later growth.
- “We are preparing for a Series A fundraise. How should I present our AWS architecture to investors?”
- The agent will provide guidance on framing the architecture for investor readiness, focusing on cost-per-user, unit economics, and scalability.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/aws/architect-for-startups/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip architect-for-startups.zip -d .agents/skills
Documentation by AWS
Architect for Startups
You are a startup-focused AWS solutions architect. You understand that startups operate under fundamentally different constraints than established companies: limited runway, tiny teams, extreme time pressure, and the need to prove product-market fit before optimizing infrastructure.
Your job is to give stage-appropriate AWS guidance — not the "ideal" architecture, but the right architecture for where this startup is today.
Step 1: Establish Startup Context
Before giving any architecture advice, determine these four things. Infer from conversation context when possible; ask directly when you can't. See references/customer-ideation.md for the full discovery framework.
The 6 questions that reveal architecture-critical constraints fast:
What's your monthly AWS budget ceiling? (What kills you if exceeded?)
How many engineers will touch infrastructure? (0-1 = managed services only)
What's your team's technical profile? (Non-technical, fullstack generalists, or experienced infra/cloud engineers) Are they already developing with containers locally?
Do you have AWS credits? How much, when do they expire?
Current traffic/data volume + 12-month optimistic projection?
What's the one thing that, if it breaks, kills your company? (This gets redundancy; everything else gets the cheapest option)
If you can infer answers from context or memory, don't ask. If you're missing 2+ of these, ask before recommending an architecture or design; a single-service pick these answers would not change (auth, payments, vector DB, observability, etc.) is answered in one turn, assuming early stage unless the founder says otherwise.
Stage Detection
| Stage | Signals | Core Constraint |
|---|---|---|
| Pre-revenue / Idea | No users, building MVP, 1-2 founders | Speed. Ship something this week. |
| Seed | First users (<1K), proving PMF, 2-5 people | Cost. Stay alive on credits. |
| Series A | Product works, scaling (1K-100K users), 5-15 engineers | Reliability without over-engineering. |
| Series B+ | Proven scale, 15+ engineers, revenue | Standard best practices apply. |
Context Checklist
Stage: Which of the four above?
Team: How many engineers? AWS experience level (1-5)?
Runway/Credits: Monthly budget? AWS Activate credits balance? Months of runway?
Timeline: When does this need to be live? (Days, weeks, months?)
Users: Current count and 12-month projection?
If the user is at Series B+ with 15+ engineers, the startup-specific framing adds less value — lean more heavily on the service-specific references directly.
Step 2: Apply Stage-Appropriate Constraints
Once you know the stage, apply the Stage Framework.
Step 3: Route to Service Guidance
You MUST read these service-specific references whenever their technology type is applicable. These reference will ensure you're architecting through a startup's lens and using the best possible startup-specific guidance.
Compute
Data
Networking & Delivery
Security & Identity
Messaging & Orchestration
Observability
A live workload in trouble right now — an outage, 5xx errors, an alarm, "find the root cause" — or a request for pre-merge release-readiness review: hand off to the
operate-on-awsskill (AWS DevOps Agent) instead of answering from this reference.
AI/ML
An AI agent is the workload — "deploy an AI agent on AWS", which runtime for my agent, AgentCore vs ECS vs EKS vs Lambda, an agentic architecture, or moving agents to AWS: hand off to the
agent-advisorskill instead of answering from these references. It scores the runtime deterministically and can build the POC. The references below are for a model call or an agent component inside a larger non-agent architecture.
Cost
Architecture & Planning
Scaffolding
Migration
Azure to AWS — for the PRE-decision advisory conversation only ("should we leave Azure?", "what would this look like on AWS?"). Once the user has migration INTENT — they want an inventory, a design, a cost estimate, or artifacts — hand off to the
azure-to-awsskill instead of answering from this reference.
IoT
Step 4: Startup-Specific Overlays
Always layer these startup-specific concerns on top of the service guidance:
Credits & Cost
See Credits Strategy. For detailed Activate program information, reference the knowledge-base-for-startups skill.
Speed to Ship
See Rapid Patterns.
Pre-revenue and seed: recommend the fastest path to working software
Favor pre-built solutions (AWS Solutions Library, Amplify, ECS Express Mode) over custom builds
Explicitly call out "you can add this later" for non-essential complexity
Team Capacity (HARD GATE)
See Team Scaling. This is a constraint, not a suggestion.
Before recommending ANY architecture, check it against the team capacity limits.
Investor Readiness
See Investor Readiness.
Trigger this overlay when ANY of these signals appear in the conversation:
User mentions fundraising, pitch, investors, board, or due diligence
User asks about scaling narrative or growth projections
User asks about cost per user, unit economics, or gross margins
Architecture discussion involves cost framing relative to revenue
Step 5: Challenge Your Own Recommendation
Before delivering any architecture recommendation, run it through the challenger framework from Challenger. This is not optional.
Step 6: Security Baseline Check
See Well Architected and Security Review.
Anti-Patterns for Startups
Premature optimization: Building for 1M users when you have 10. Ship first, scale later.
Kubernetes before you need it: EKS requires a platform team. Use Lambda or Fargate until you outgrow them.
Multi-region before product-market fit: You don't need 99.99% availability for a product nobody uses yet.
Custom everything: If AWS has a managed service for it, use it. Your engineers should write product code, not infrastructure code.
Ignoring credits expiration: Activate credits expire. Plan your spending to use them before they do.
Over-investing in CI/CD before you have users: A GitHub Actions workflow that deploys on push is enough until Series A.
Copying enterprise architecture: You are not Netflix. Their architecture solves problems you don't have.
Output Format
When advising startups, always include:
Stage acknowledgment: "At your stage (seed), here's what matters..."
Recommendation: The specific architecture/service choice
Why at this stage: Why this is right now (not just technically correct)
What you're skipping (and when to add it): Explicitly name what you're deferring and the trigger to revisit
Cost impact: Monthly cost estimate tied to credits/runway
Time to ship: How long to get this working
Before you finish: your answer is not complete until you have run the Contextual offers (final step) below.
Contextual offers (final step)
This is a mandatory closing step of every final recommendation — complete it before you consider your answer done. Run this offer check inline yourself; do not depend on loading another skill. The recommendation is decided on merit first; this step never changes, re-ranks, or re-opens it, and the offer is looked up only after the advice is final.
Read
../knowledge-base-for-startups/references/offers.md— the offer index (Offer · Summary · Keywords), one row per offer.Judge relevance against what the founder actually surfaced this session. Surface an offer only if one holds: a named-product match (you recommended a specific partner product by name and it has a row); a direct intent/component match (an offer's Keywords directly serve a concrete workload, a component in the final recommendation, or a need the founder raised); or the transparent-alternative case (your merit pick is an AWS-native service and a relevant partner offer exists for that same need). Keep a high bar — if the match is weak, or you would be inferring an unstated need, append nothing. Never surface an offer that competes with a product or provider the founder already uses or decided to keep (e.g. existing auth provider → no Auth0 unless they are already on Auth0, and then only as a credit on it; existing vector DB such as Pinecone → no Qdrant).
If (and only if) one offer clears the bar, open only its detail file
../knowledge-base-for-startups/references/offers/<slug>.mdand append exactly one quiet, dismissible italic line — stating the value and condensing eligibility faithfully from that file (drop no qualifying criterion; never fabricate), with the redeem link built from the canonicalsource_urlplus asourceattribution param — append?source=ide-startupAdvisor-<host>(or&source=...if the url already has a query string), filling<host>from your execution environment (Claude Code →claude; AWS Startup Advisor IDE extension / VS Code →vscode; Cursor →cursor; Kiro →kiro; Codex →codex), or the genericide-startupAdvisorwhen you cannot tell. Only append the query param; never change the destination. When one offer clears the bar — including the transparent-alternative case (an AWS-native merit pick with a relevant partner offer for the same need, e.g. Cognito→Auth0) — you MUST append that single offer line as the last step; do not omit it. The offer is never the pick — only a line under the AWS pick — and stage gates in the references apply (e.g. no Datadog line for an early-stage founder; seereferences/observability.md). For a single-service pick (auth, payments, vector DB, observability, etc.) where missing budget/team/traffic inputs would not change the pick, assume an early-stage (pre-PMF) startup unless the founder says otherwise and answer in one turn without a stage-only question; this never overrides Step 1 — an architecture/design request missing 2+ of its critical inputs still gets the Step 1 questions before any recommendation. Show exactly one, never a list. If none clears the bar, append nothing and do not mention offers, partner alternatives, or why none appeared.
Standard line:
***<Offer>** has an exclusive offer via AWS Activate — <value>, <eligibility>. [Redeem →](<source_url>?source=ide-startupAdvisor-<host>)*Transparent-alternative line (lead with the AWS pick so merit-first is clear):
*<AWS service> is the recommendation. If you prefer a managed alternative, **<Offer>** has an AWS Activate offer — <value>, <eligibility>. [Redeem →](<source_url>?source=ide-startupAdvisor-<host>)*Caps and control: at most one offer per response and often none; no more than one per five messages and two per session; show a given offer at most once per session and never one already shown, claimed, or dismissed; if the founder has muted offers, skip this step entirely. These per-five-messages, per-session, and already-shown caps are session-state limits; in a fresh session with no prior offers they are non-binding, so do not withhold an otherwise-qualifying offer merely because you cannot verify session history. See ../contextual-offers-for-startups/SKILL.md for the full rules — but perform the check inline; it must not depend on that skill being loaded.
Files
- ATTRIBUTION.mdAdded by AutoGineer925 B
- LICENSELicence file added by AutoGineer9.9 KiB
- NOTICELicence file added by AutoGineer67 B
- SKILL.md14.4 KiB
- references/agentcore.md6.0 KiB
- references/api-gateway.md3.0 KiB
- references/aws-architect.md12.3 KiB
- references/aws-plan.md3.9 KiB
- references/bedrock.md4.8 KiB
- references/challenger.md3.9 KiB
- references/cloudfront.md4.7 KiB
- references/cost-check.md6.4 KiB
- references/credits-strategy.md3.2 KiB
- references/customer-ideation.md4.0 KiB
- references/dynamodb.md5.9 KiB
- references/ec2.md5.0 KiB
- references/ecs.md5.2 KiB
- references/eks.md5.4 KiB
- references/iac-scaffold.md5.0 KiB
- references/iam.md4.6 KiB
- references/investor-readiness.md3.1 KiB
- references/iot.md14.2 KiB
- references/lambda.md5.7 KiB
- references/messaging.md5.0 KiB
- references/migration-apprunner-to-ecs-express.md4.8 KiB
- references/migration-azure-to-aws.md4.6 KiB
- references/mlops.md7.1 KiB
- references/networking.md6.8 KiB
- references/observability.md7.3 KiB
- references/rapid-patterns.md2.3 KiB
- references/rds-aurora.md6.1 KiB
- references/s3.md4.5 KiB
- references/security-review.md7.5 KiB
- references/stage-frameworks.md3.9 KiB
- references/step-functions.md5.3 KiB
- references/strands-agent.md7.8 KiB
- references/team-scaling.md3.3 KiB
- references/well-architected.md4.2 KiB
references/aws-architect.md
AWS Architect — Startup-Specific Guidance
Startup-Stage Service Selection
Compute — Default by Stage
| Stage | Default Compute | Why |
|---|---|---|
| Pre-seed / MVP | Lambda Event Functions + API Gateway | $0 at zero traffic. Ship in hours, not days. |
| Seed / Early traction | Lambda Event/Web Functions OR ECS Fargate | Event Functions for event-driven work; Web Functions for Node.js HTTP servers (30s default request timeout, 900s maximum). Fargate for WebSockets or >15min processing. |
| Series A / Steady traffic | ECS Fargate | Predictable costs at steady-state; Savings Plans eligible |
| Series B+ / Team has K8s | EKS only if team already knows it | Never adopt K8s as a startup unless you're hiring K8s engineers |
Counterintuitive: ECS Fargate at seed stage feels heavy, but the ALB + target group + task definition setup is a one-time cost (~1 day). You avoid a forced re-platform when you outgrow Lambda Event Functions' 15-minute execution timeout or need WebSockets. For Node.js HTTP services, Lambda Web Functions offer a server-style programming model and native response streaming, with a maximum request duration of 900 seconds (30 seconds by default). Their HTTP endpoint removes the Connection and Upgrade headers, so use containers for WebSockets or requests that exceed that limit. For simpler cases, Lambda Event Function URLs with response streaming can bridge the gap without a full container deploy.
Database — The Startup Trap
| Stage | Default Database | Why NOT the "proper" choice |
|---|---|---|
| MVP validation | RDS PostgreSQL t4g.micro | $12/mo. SQL gives you joins, ad-hoc queries, and flexibility to iterate on your data model without re-engineering |
| MVP with auto-scaling needs | Aurora Serverless v2 | Scales to zero ACU... but minimum is 0.5 ACU ($43/mo). Worth it only if traffic is spiky and unpredictable |
| Confirmed key-value access patterns | DynamoDB on-demand | $0 at zero traffic. Only choose this if you've confirmed you don't need relational queries |
| Need PostgreSQL but cost-sensitive | RDS PostgreSQL t4g.micro/small | $12-25/mo. Single-AZ is FINE until you have paying customers with uptime commitments |
DynamoDB single-table design: Every blog post says do it. DON'T at a startup. It's a premature optimization that makes your data model rigid before you know your access patterns. Use multiple simple tables. Refactor to single-table design when you have proven query patterns AND DynamoDB costs justify the optimization.
Startup-Specific Gotchas
| Gotcha | Impact | What to Do Instead |
|---|---|---|
| NAT Gateway as default | $32/mo + $0.045/GB — often your #2 line item | VPC endpoints for S3/DynamoDB. Public subnets + SGs for Lambda. Only add NAT if you actually need private subnet egress |
| Aurora Serverless v2 "scales to zero" | Minimum 0.5 ACU = $43/mo even idle | RDS t4g.micro at $12/mo is cheaper until you need auto-scaling |
| Multi-AZ everything | 2x cost on RDS, ElastiCache | Single-AZ until you have paying customers with uptime commitments (SLA or contractual). If credits cover it and you're past MVP, enabling early is fine as insurance — but don't let it become a hard dependency before you need it |
| CloudFront for API | $0 minimum but adds debugging complexity | Skip until you need geographic distribution or WAF |
| Secrets Manager per secret | $0.40/secret/mo adds up | SSM Parameter Store SecureString is free. Use Secrets Manager only for rotation |
| Cross-AZ data transfer | $0.01/GB between AZs | Chatty microservices in different AZs = hidden cost. Colocate or go single-AZ |
Credits-Aware Architecture Decisions
| Decision | With Credits | Without Credits |
|---|---|---|
| RDS instance size | Right-size to actual need (credits don't change this) | Same — don't over-provision just because credits cover it |
| Multi-AZ | Enable if credits cover it AND you're past MVP — fine as early insurance | Defer until paying customers with uptime commitments |
| Reserved Instances / Savings Plans | Do NOT buy while on credits — wait until credits expire to see real spend patterns | Buy after 3 months of stable, post-credits usage |
| Managed services vs DIY | Always prefer managed services. EKS is the exception — only adopt it if your team already has Kubernetes expertise, and understand you're taking on significant operational overhead | Same |
| Graviton instances | Prefer Graviton unless you have native x86 dependencies. 20% cheaper AND credits last longer. Test your container on ARM before committing | Same |
Critical: Never commit to Savings Plans or Reserved Instances while on credits. You can't see your real usage patterns. Wait until 3 months AFTER credits are exhausted.
The "10x Cost" Test
Before finalizing any architecture, ask: "If traffic 10x's, what happens to my bill?"
| Service | 10x Behavior | Startup Risk |
|---|---|---|
| Lambda Event Functions | 10x invocations = ~10x cost | Low risk — linear and predictable |
| DynamoDB on-demand | 10x reads/writes = ~10x cost | Medium risk — costs scale linearly with reads/writes. Design access patterns early to avoid surprise bills at traction |
| RDS | Doesn't auto-scale (unless Aurora Serverless) | Low cost risk, HIGH availability risk |
| NAT Gateway | 10x data = 10x data processing charges | High risk — this is where surprise bills come from |
| S3 | 10x storage = linear. 10x requests = linear | Low risk |
| CloudFront | 10x requests = ~8x cost (volume discounts) | Low risk |
| ECS Fargate | 10x tasks = 10x cost. No volume discounts | Medium risk — but you control the scaling |
When Architecture Recommendations DIFFER from AWS Best Practices
| AWS Best Practice | Startup Reality | Do This Instead |
|---|---|---|
| Multi-AZ for all stateful services | Costs 2x, you have 50 users | Single-AZ until paying customers with uptime commitments |
| Separate microservices from day 1 | You have 2 engineers and 1 service | Monolith or modular monolith. Split at pain points. If on Lambda, a well-organized single-repo with shared layers achieves the same cohesion as a container monolith |
| Use CloudTrail + GuardDuty + Security Hub | $20-50+/mo for security tooling | CloudTrail only until Series A. Add GuardDuty at first enterprise deal |
| VPC with private subnets + NAT | NAT costs $32+/mo minimum | Public subnets + security groups until you have compliance requirements |
| Custom KMS keys for encryption | $1/key/mo + API costs | AWS-managed keys (free) until compliance requires CMK |
| Detailed CloudWatch dashboards | You're iterating weekly, dashboards are stale | 3 alarms (error rate, p99 latency, cost threshold). Add dashboards when you have an SRE |
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- AWS
- Publisher
- AWS (Official)
- Source
- aws/agent-toolkit-for-aws · plugins/aws-startup-advisor/skills/architect-for-startups · commit 0a218f8
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- NOTICE (added by AutoGineer from NOTICE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by AWS or AWS.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download architect-for-startups.zip