---
# System prepended metadata

title: Onboarding Internal Docs Needed

---

**_this is a fork of [a note](https://hackmd.io/@skoop/H100PRLH9) kindly compiled by [@skoop](https://hackmd.io/@skoop) when she left the company. it has been added to the team account just in case her copy is taken down in the future._**


# Onboarding Internal Docs Needed

Each of these docs should probably become a Trello card in the onboarding Trello

## All
- Team Overview
    - Team Norms
    - Knowledge repo/Wikis
    - How we meet:
        - Stand (and async stand channel)
        - Tactical
        - Retro
        - IPM
        - Grooming?
    - The projects: Braintree and Northstar

- JIRA Overview
    - Links to the BT and Northstar JIRA boards
    - JIRA estimation guidelines
    - Projects & pairs sheet
    - Assinging owner/member to tickets for pairs
    - Linking PR in comments
    - Overviews of the main epics and what they are used for
    - Overview of our grooming/sprint planning process

- GitHub Overview
    - Setting up public GH account
    - Which repos do we work in most?
        - Android/iOS are entirely done in public repos
        - JS and server SDKs are actively developed by PP teams in a private repo, and public repos are what eventually gets released.
    - Branching strategy (off main/feature branches/next major version)
    - How to set up git duet locally and use it
    - PR review process, reviewers required, automated GitHub team reviewers requested
    - Merging (squash and merge)
    - Updating branches (merge commit vs rebase)
    - Handling GitHub issues
    - PR template and CHANGELOG
    - Reviewing public PRs
        - Server SDK review and merge git strategy
        - Server SDK review of internal PRs from engineering and common gotchas:
            - are added items in alphabetical order?
            - did they add unit tests for everything?
            - did they add integration tests?
            - any added field names/attributes make sense to outside devs? (acronyms, shorthand, any internal jargon that wouldn't be easily understood)
    - Consolidated list of all the repos we own and what they are for (iOS has this in knowledge repo but missing for Android/others)

- Performance
    - Maybe replace coaching Trello card?
    - Brag document
    - Technical step up

- Slack
    - Slack ettiquete, go/slack-etiquette
    - List of slack channels our team should be in
    - List of commonly used service channels of other teams and what they're for (see [here](https://engineering.paypalcorp.com/confluence/display/DEV/Interruptions+Overview+-+Product+Ownership) if this is still accurate)
    - List of automated slack channels we monitor
    - List of fun channels to join

- Interruptions
    - Overview of interruptions process
    - [Confluence](https://engineering.paypalcorp.com/confluence/display/CSSE/Managing+interruptions)

- Self Directed Learning
    - Make sure there's time to reviewing knowledge repo, team norms, confluence, getting familiar with repos, slack history
    - Reading through Braintree developer docs
    - [set up postman for PP testing](https://engineering.paypalcorp.com/confluence/pages/viewpage.action?spaceKey=postman&title=Postman+Getting+Started)
## Client SDKs

- General knowledge
    - Gateway app & client API ownership
    - auto-vaulting behavior (validate flag)
    - GraphQL API
        - what is it and when to recommend it
    - sibling teams we often work with:
        - Fraud Tools Auth (3DS)
        - Fraud Tools Eval (Fraud Protection/device data)
        - PP RDA (actual device data collector libraries)
        - Payment Experiences (formerly known as Wallets)
            - Apple Pay
            - Google Pay
            - Samsung Pay :-/
            - Local Payment Methods
            - Pay With Venmo**

- Targeted knowledge
    - 3D Secure 201 training (what is it, what are the moving parts, where do we fit in, where do support and Fraud Tools Auth need assistance in interruptions channels)
    - Pay With Venmo 201 training (what is it, what are the moving parts and teams involved, common inbounds and how to troubleshoot)

## Mobile

- iOS Setup
    - Setup Apple developer account with PayPal email
    - Download Xcode (developer portal)
    - Certificate setup for simulators
    - Bundler
    - Cloning each repo / building each demo app
    - Module / architecture overview for core repo
    
- Android Setup
    - Download Android Studio (self service)
    - Download Android versions
    - Create emulator
    - Certificate script for emulators
    - Download Java versions
    - Build demo apps
    - Run unit/integration tests with rake
    - Download publishing files from 1Pass

- Testing
    - CI overview (GitHub Actions)
    - Test cards we use frequently (3DS1/3DS2)
    - Manually testing Venmo
    - Testing PayPal production
    - Accounts for testing Google Pay

- General knowledge
    - pop-up bridge repos
        - what they do and when to recommend them

## JS

- Setup
    - Get NVM setup
    - JS SDK Integration: what is it and why do I care...also how do I use it!
    - Setting up and linking sandbox accounts for Paypal and Braintree...Should this be a general item as well?

- General
    - Cpair cont'd: when it is needed, when it is helpful, when you don't have to use it.
    - [BT] Run drop in demo locally
    - Northstar: What, where, why, how...
    - Hosted Fields vs Drop in (this could be general across client platforms to a degree as well)

## Server

- Setup
    - cpair setup, including settings for largest sized cpair
    - GHE and public GH group membership
    - setup personal BT and PP sandbox accounts for testing
    - Visual Studio and .NET repo on local machine

- General
    - walk through BT stack
    - walk through Gateway app and our code ownership
    - API ownership vs SDK ownership, learning to tell the difference
    - Northstar, what is it and where are we in progress
    - Release process for BT SDKs


