Skip to main content

Onboarding Document

[Insert NPO name] Onboarding Timeline

Pre-onboarding

Goal:

Getaccess
NPO[Insert NPO name, hyperlink to their website]
Primary Contacts[Insert Tech Lead and preparePM yourcontact environment(Name, role, position, email, discord handle)]
Repository Links[List of repositories used for the project in the following format (respository name with hyperlink to gh repo)]
Issue Tracker[Direct link to gh issue tracker]

Overview

Provide a short description of the NPO [What do they do? Where are they located? Group of people their services are focused on?]

ActionProvide Items:a high-level description of what the project does, what problem does it solve, who will be using it?

Architecture

Include a short explanation of the system's main components:

  • JoinCore our discord.Services
  • RequestFrameworks. accessIf to:you Databases
  • ReviewAuthentication Blueprint's engineering handbook (style & code standards)
  • Install pre-requisites
    • Node >= 18, Python >= 3.10, Docker, Docker Compose, AWS CLI, CDK v2
Week 1

Goal: Understand Blueprint’s deployment model and CDK architecture.

Action Items:

  • Understand how CDK synthesizes CloudFormation templates

  • Study ECS service and ALB definitions, environment variable propagation, and secret management.

  •  Exercise:

    • Add an encrypted S3 bucket via CDK.

    • Grant ECS task IAM permissions using `iam.PolicyStatement`.

    • Deploy with `cdk deploy`

    mechanisms

##[Insert Weekthe 2architecture document AWScreated Advancedbefore Topicsproject kickoff]

Challenges

**Goal:**Give Movea fromprioritized CDKlist basicsof all main challenges your team is currently facing and a possible path to advancedsolve AWSthem. infrastructureEncourage patterns.


### Action Items

- Networking and Security:

  - Diagram the VPC, subnets, and routing in an existing stack.

  - Add a VPC endpoint for S3 or Secrets Manager using CDK.

  - Explain ECS service isolation (public ALBthem to private RDS instance).

- Compute Scaling and Observability:

  - Implement ECS autoscaling based on CPU/memory metrics.

  - Add log drivers (AWSLogs or FireLens) for structured CloudWatch logging.

- Exercise:

  - Build a reusable ECS microservice construct with environment variables, secrets, and IAM roles.

  - Parameterize for development and staging environments.

- Deliverable: Open a pull request adding your CDK constructcontribute to the sharedproblem internalsolving library.brainstorm.


---


## Week 3 – FastAPI Deep Dive (Backend Layer)

**Goal:** Master FastAPI for scalable backend development with asynchronous I/O and strong typing.


### Action Items

- Architecture Review:

  - Explore routers, dependencies, middlewares, and ORM models.

  - Review how Blueprint services use SQLAlchemy and Pydantic models.

- Advanced Topics:

  - Build asynchronous endpoints using `asyncpg` and connection pooling.

  - Implement middleware for structured logging and correlation IDs.

  - Introduce background processing with `BackgroundTasks` or Celery.

- Exercise:

  - Implement a new CRUD route using async SQLAlchemy.

  - Add nested Pydantic validation and request/response models.

  - Write end-to-end tests using `pytest-asyncio`.

- Deliverable: Merge a PR with a new FastAPI module, achieving 80%+ test coverage.


---


## Week 4 – React Architecture and Frontend Systems

**Goal:** Build production-ready, performant React interfaces aligned with Blueprint’s design standards.


### Action Items

- Codebase Analysis:

  - Review the Blueprint web template (React + Vite + Tailwind).

  - Understand component hierarchy, React Query patterns, and context usage.

- Advanced Topics:

  - Data caching and synchronization using React Query.

  - Optimistic updates and error boundaries.

  - Component composition following atomic design principles.

- Exercise:

  - Build a paginated table with infinite scrolling backed by an internal API.

  - Add skeleton loaders and form validation.

- Testing:

  - Write component tests with Jest and Testing Library.

  - Add end-to-end UI tests using Playwright or Cypress.

- Deliverable: Submit a PR containing a complete and tested React feature.


---


## Week 5 – System Integration and CI/CD

**Goal:** Integrate backend and frontend systems and manage deployments independently.


### Action Items

- Connect the FastAPI backend module with the React frontend.

- Configure GitHub Actions:

  - Create lint and test workflows for web and server.

  - Add workflow triggers for pull requests and merges to `main`.

- Extend CDK stack:

  - Include API and web containers in ECS service definitions.

  - Use multi-stage Docker builds for production images.

- Create `.github/workflows/deploy.yml` for ECS deployments using OIDC role assumption.

- Deploy to the sandbox environment and validate via health checks.

- Deliverable: End-to-end feature deployed successfully on ECS.