# DSG Mobile Team Onboarding OFFSHORE/NEARSHORE
> Offshore Resource with BYO Laptop
### DSG IT Service Desk: 866.418.3456
### Step 0: IT SUPPORT - PREREQUISITES - OFFSHORE
- [ ] BYO Macbook (or Windows laptop for QA, Android) available
- [ ] DSG Network / Office 365 / @dcsg.com account created
- New Hire Request ticket submitted by Engineering Manager and completed
### Step 1: DSG MyCloud for DSG resource access
- [ ] Contact DSG Service Desk at number above and they will provide your initial password to accompany your new @dcsg.com user id
- [ ] Set up MFA for DSG SSO authentication
- Service Desk can assist with this as well
- [ ] Sign into [DSG Mycloud](https://mycloud.dcsg.com/catalog-portal/ui?isOnPremise=true&isMobile=false&userId=60339#/catalog) and authenticate with DCSG credentials
- [ ] Choose 'Cloud Desktop Windows 10' - this will creaete a virtual Windows desktop with access to DSG network and assets (e.g. Jira, Teams, et al)
- Install Horizon Client software if necessary
### Step 2: GitHub Access - 'dsg-tech'
- [ ] DSG Identity Portal *(this step completed by Engineering Manager)*
- Add user to appropriate identity group
- This will auto-sync after ~1/2 day to other systems and allow user to see GitHub app in 'My Apps' portal
- [ ] DSG requires a GitHub user id with MFA enabled
- Recommended to create new GitHub user with your @dcsg.com email address
- [ ] Visit: [DSG Microsoft My Apps Portal](https://myapplications.microsoft.com)
- Authenticate with DSG credentials
- Click on GitHub DSG Tech application

- User should complete single-sign-on (SSO) to GitHub platform using DSG credentials
- User should now be joined to **dsg-tech** GitHub organization
- [ ] Visit **dsg-tech** organization in GitHub after successful SSO
- If you are not automatically added to the 'Consumer Mobile' team in the dsg-tech organization, submit a request to join this group
- Verify that you can view the main native app code repositories:
- android-mono - Android white-label app repository
- mono-ios - iOS white-label app repository
### Step 3: DSG Jira Access
- [ ] Create request/ticket to add user for access to DSG Jira *(this step completed by Engineering Manager)*
- [DSG Technology Support - Jira Access Request](https://jira.dcsg.com/plugins/servlet/desk/portal/21/create/415)
- [Android Consumer Mobile project board](https://dcsgcloud.atlassian.net/jira/software/c/projects/DCAA/boards/644)
- [iOS Consumer Mobile project board](https://dcsgcloud.atlassian.net/jira/software/c/projects/CMT/boards/643)
- [ ] Login to the [DSG Jira site](https://jira.dcsg.com/) and visit the approrpriate projects linked above
- [ ] Once you have Jira & Confluence access, review the [DSG Acronym Cheat-Sheet](https://confluence.dcsg.com/pages/viewpage.action?spaceKey=DA&title=Acronym+space)
### Step 4: REVIEW and UNDERSTAND DSG Coding Guides
- [ ] iOS
- [ ] DSG iOS Coding guidelines: [GitHub Wiki](https://github.com/dsg-photon/mono-ios/wiki/Dick's-Sporting-Goods-Swift-Style-Guide)
- [ ] Branch & PR Naming Guidelines: [GitHub Wiki](https://github.com/dsg-photon/mono-ios/wiki/iOS-Branch-%26-Pull-Request-Naming-Guidelines)
- [ ] iOS Unit Test guidelines: [GitHub Wiki](https://github.com/dsg-photon/mono-ios/wiki/Unit-and-UI-Testing-Guidelines)
- [ ] Swiftlint how-to [TBD]
- [ ] Android
- [ ] DSG Android Coding Guidelines: [GitHub Wiki](https://github.com/dsg-photon/android-mono/wiki/Android-Coding-Guidelines)
### Step 5: Install IDE
- [ ] iOS: Xcode 14 (v14.2 at time of writing)
- [ ] Android: Android Studio (Electric Eel v2022.1.1 at time of writing)
### Step 6 [iOS]: Join DSG Developer Account & Create Developer Certificate
- [ ] Create a new Apple ID using your @dcsg.com email address
- [ ] Notify Engineering Manager or iOS Lead that your Apple ID is created so they can invite you to the teams below
- [ ] Invites to both developer accounts will be sent to your new Apple ID
- **Dick's Sporting Goods, Inc.** Developer Account
- Used for ApplePay builds or TestFlight/App Store deployments
- **Dick's Sporting Goods** Enterprise Developer Account
- Used for Debug builds and QA/UAT builds distributed via Firebase
- [ ] After accepting invites, once again inform Engineering Manager or iOS Lead so they can add you to the TestFlight Test Group
- [ ] **[ONLY NEEDED IF RUNNING SPECIAL BUILDS ON YOUR TEST DEVICES - NOT NEEDED FOR TESTFLIGHT BUILDS]** Use Keychain Access tool to generate a new developer certificate on each account