**_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