It's your first day working remote at a new corporation. You don't know anyone. You have no idea how to start developing on the tech stack because IT has locked you out of the corporate Github instance. You grab a cup of coffee then sit and wait for a meeting invite, hoping someone will come to the rescue but everyone on the team is scrambling to make a hotfix release.
All you have is your trusty laptop. Where do you even start? You ping your contact at the company from the interview. Your contact sends back a brief message detailing how to connect to email and the corporate VPN but nothing you try seems to work. It's getting on 2pm and still you have no way to login to your corporate email where a Slack invite is waiting for you. It's a chicken and the egg moment! You can't access your email because you aren't connected to the corporate VPN. You can't connect to the corporate VPN because well you can't login to email to get the VPN token waiting for you in your inbox.
This really happens folks! It can be a frustrating mess. With a little patience you can conquer this first day working remote. By your second day you can start adding value to your new development team.
The first thing you need is a direct line to corporate IT. It sounds daunting to say the least. Usually corporations have a hotline or chat for IT support. Since you aren't connected to corporate VPN yet, try searching for the corporation's IT support hotline. Reach back out to your contact to see if they can provide the method to reach IT.
Call up the support hotline and request help for connecting to the corporate VPN for the first time. The IT professional will most likely want to remote into your computer to help. Accept this invitation and let IT setup the corporate VPN on your computer. You ask the same IT professional to help setup your email but they stop you short, responding with what sounds like a scripted message about how remote employees can only access email with a web browser. Before hanging up, ask the IT person where a service portal is located that you can write tickets for IT. You are going to need more help setting up your computer for sure.
You try to login to the IT service portal but keep seeing "Connection Refused" messages in the browser. That corporate email seems even farther than ever before.
The key to success here is to keep trying. Corporate IT is often split up into different specialities, each person has a particular area they know about. You might also get someone new on the job, but even the most experienced IT person won't have all the answers. Keep calling the hotline or start up a chat but each time you do, make sure you have a particular task you want to complete. Keep calling the support hotline, jot down the ticket numbers the person on the other line created for your issue. Hang up and try again until the issue is resolved.
Remember the first IT person who said you could only login to email from a web portal? Turns out according to another IT professional there is a way to configure Outlook for the mail account after you are connected to the corporate VPN.
It takes 4 hours on the line with 5 different IT professionals before you can properly connect over VPN and have your email setup in Outlook. With some persistence sometime in your first day you will finally have access to the corporate network.
It's pretty astounding how fragmented corporate IT services can get.
First thing you should do once you can connect to VPN is give yourself a virtual tour. Find the address where internal announcements are made, the IT service portal, where applications can be downloaded, wherever project management tools like Jira exist, and finally wherever the corporate instance of Github is (or whatever else your team uses for source control). Login to each of these services. If you have problems with getting access, call up IT again. It's pretty astounding how fragmented corporate IT services can get. I once added an avatar to 12 different portals in the first day. You'd think all of them would sync up with one service, but no.
If the clock keeps ticking, ping your manager and request they make support tickets on your behalf. If you can’t get basic services up and running by the end of Day 1 you aren’t a complete failure. It’s not your fault your new employer doesn’t have a good onboarding strategy. Navigating large corporate IT infrastructure is not easy. Just keep vigilant and call IT until your issues are resolved.
I just started another 100% remote job which prompted me to write this post. I'm on my second day and still waiting for access to the corporate instance of Github. If you ever find yourself in a similar limbo, its time to figure out how you can add value to your team without some of the tools you may be familiar.
Identify a problem and solve it.
In my case I have to use two applications to connect over the corporate VPN. The first application creates a token I then copy and paste into the password field of the second application that actually connects to the VPN. Who wants to do all that copying and pasting?
I'm on a Mac so luckily I have a little known scripting utility called AppleScript at my disposal. AppleScript allows you to script applications in MacOS. My problem is I don't know how to write a lick of AppleScript. Not knowing the programming (or in this case scripting) language has never stopped me in the past though, so I start googling how to open an application with AppleScript. Turns out you can write a script that clicks around a Mac app like an e2e test would on a web application.
The script I ended up with opens two apps, enters a pin into the first app, clicks a button then copies a token to the clipboard and pastes the token into a field in the UI another app. Here is a brief example from the script that focuses an application and clicks a button with AppleScript:
tell application "VPN Client" activate tell application "System Events" tell process "VPN Client" click button "Connect" of window "VPN Client" end tell end tell end tell
In the course of writing the script, I found there was a utility app called Accessibility Inspector packaged with XCode that allows you to drill down into any Mac app and see the titles applied to UI elements. You can treat the title of a UI element as you would a selector in DOM, i.e.
click button "Connect" of window "Cisco AnyConnect".
Automating little things enables you to focus on solving big problems.
I still don't have access to version control at my new company, but I announce to the team that I built a small utility so anyone developing on a Mac can use a simple CLI command to connect to VPN.
So much better then clicking around two different apps to copy and paste a token!
You can be the hero on your first week working remote. If you are blocked setting everything up, find something to do that can make the process better for you and your teammates. Keep plugging away at corporate IT until you find someone who can help. Navigate around the corporate sites to get a feel for services and benefits the company provides. It's exciting to be starting a new job! Don't let the challenges of getting your development environment setup bring you down. Pretty soon you will be assigned tickets for actual web development. In the meanwhile, be proactive and show your new team some of those skills!
(open source and trusted by devs everywhere ❤️)