Skip to main content

New Developer Onboarding Guide

Welcome to Skyflow! This guide will help you get set up and productive as quickly as possible.

Table of Contents

Prerequisites

Before starting, ensure you have:
  • GitHub account added to skyflow-me organization
  • Slack access to Skyflow workspace
  • Access to 1Password team vault
  • Company email set up

Day 1: Environment Setup

1. Install Required Tools

# Install Homebrew (macOS)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install development tools
brew install git go node pnpm docker kubectl helm

# Install GitHub CLI
brew install gh
gh auth login

2. Configure Git

git config --global user.name "Your Name"
git config --global user.email "your.email@skyflow.io"
git config --global init.defaultBranch main
git config --global pull.rebase true

3. Clone Core Repositories

mkdir -p ~/code/skyflow
cd ~/code/skyflow

# Clone main repositories
gh repo clone skyflow-me/platform-docs
gh repo clone skyflow-me/core-service
gh repo clone skyflow-me/web-app

4. Set Up Local Development

# Start local development environment
cd ~/code/skyflow/core-service
make setup
make dev

# In another terminal
cd ~/code/skyflow/web-app
pnpm install
pnpm dev

5. Verify Setup

# Run tests
make test

# Check services are running
curl http://localhost:8080/health

Week 1: Getting Oriented

Understand the Architecture

  1. Read the Architecture Overview
  2. Review the ADRs to understand key decisions
  3. Explore the codebase structure

Key Repositories

RepositoryPurpose
platform-docsTechnical documentation
core-servicePrimary backend service
web-appFrontend application
infrastructureKubernetes and Terraform

Meet the Team

  • Schedule 1:1s with team members
  • Attend team standup meetings
  • Join relevant Slack channels:
    • #engineering - General engineering discussion
    • #platform - Platform team
    • #incidents - Incident response
    • #deployments - Deployment notifications

Development Workflow

  1. Pick up a ticket from the backlog
  2. Create a feature branch
  3. Make changes and write tests
  4. Open a pull request
  5. Address review feedback
  6. Merge after approval

Week 2: First Contribution

Starter Tasks

Look for issues labeled good-first-issue in our repositories:
  • Documentation improvements
  • Test coverage additions
  • Small bug fixes
  • Code cleanup

Pull Request Guidelines

# Create a feature branch
git checkout -b feature/your-feature

# Make changes and commit
git add .
git commit -m "feat: add your feature"

# Push and create PR
git push -u origin feature/your-feature
gh pr create

Code Review

  • All PRs require at least one approval
  • Address all review comments
  • Keep PRs focused and small
  • Write clear commit messages

Resources

Documentation

Tools & Access

ToolPurposeAccess
GitHubCode repositorygithub.com/skyflow-me
SlackCommunicationskyflow.slack.com
1PasswordSecretsTeam vault
PagerDutyIncidentsskyflow.pagerduty.com
GrafanaMonitoringgrafana.skyflow.io

Learning Resources

Getting Help

Who to Ask

TopicContact
General questions#engineering Slack channel
ArchitecturePlatform team lead
Access issuesIT support
HR questionsPeople team

Pair Programming

Don’t hesitate to ask for pairing sessions! They’re a great way to:
  • Learn the codebase
  • Understand best practices
  • Build relationships with teammates

Office Hours

Engineering holds weekly office hours for questions and discussions. Check the team calendar for times.
Welcome to the team! We’re excited to have you. Remember, there are no stupid questions - we’re all here to help each other succeed.