iteration cover image

iteration

Onboarding into a new codebase πŸ‘‹

Jun 29, 2020
32:30

Today's topic:

Onboarding into a new codebase

As a new hire / contractor for a freelance project

From JP:

  • Reviewing other people's PRs on a new codebase
  • Submitting your first PR
  • Understanding how data flows through the app
    • I've found that the organization of the code and the quality of abstractions makes or breaks this point
  • Ramping up complexity of feature stories that you can tackle. How do you get there?

From John:

  • First β€” Understand the domain, talk with team, read books, use competitor software, language in that domain.
  • Then β€” Understand the software
    • Read the Docs, all that you can get your hands on
    • Review closed issues / tickets, try to understand the language /culture of the team
    • Review the tests, this is a good place to start if there is any, especially integration or feature tests that are higher level
    • Find the "God" objects if you can.
    • Write docs as you go, great way to get it into your head

Onboarding someone else onto a new codebase

From JP

  • Hiring contractors for a project
  • Onboarding new hires
  • Reviewing new hires' pull requests **it's own episode maybe? Code Review?**
  • How do you onboard someone else?
    • I think domain context is important

From John

  • Support the advise given above! It's just the reverse
  • First: Domain Context
  • Then β€”
    • Provide Docs
    • Tests
    • Simple first issue
  • Pair on the onboarding Dev's first PR VS sink or swim
  • Try to demonstrate what tools and process you use in a project

Picks

JP: https://apps.apple.com/de/app/meeter-fast-call-initiation/id1510445899?l=en&mt=12

John:

  • Rails View Components
  • It's a new pattern in rails to produce reusable front end "Partials" but more abstracted and re-usable.
  • This pattern plus stimulus.js is really magic.

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode