How Onboarding at Two Tech Giants Led to a Product 10 Years Later
The story behind Educative Enterprise goes back further than a startup scaling rapidly in the midst of a global pandemic. It goes down to the unique challenges faced by software engineering teams, and the specific needs for continuous upskilling in a constantly changing technological landscape.
Educative’s rapid growth in the last two years has meant solving new challenges. Not just in delivering the product to the world, but in scaling our own teams to meet that demand and stay competitive in a rapidly evolving talent market.
You’d think for a company that specialized in developer learning, this would be easy - hire great engineers, give them access to a library of software engineering content, and watch them grow.
Spoiler for anyone who hasn’t tried to scale a team: it’s not that easy.
There was a hole in our engineering enablement efforts. Yes, we have great tools, and try to streamline the use thereof. But who is the expert on our Docker implementation? Who is our React master?
We had SMEs scattered throughout the organization. That was problem one. Problem two: we were hiring faster than we could train, as all those experts were also working, and we started to see our culture and internal processes slip. Problem three: with teams spread across two continents and content partners on four more, the stress levels of syncing meeting times or responding to Slack messages the next day often got lost in the regular daily duties of managers and those SMEs.
To empower our technical organization to achieve more, we needed better onboarding. Our own work, along with talks with our clients and business partners, led us to what is now Educative Enterprise. Beginning with onboarding, Educative Enterprise is how we are solving for rapid upskilling, asynchronous collaboration, remote enablement, and engineering delivery.
But the story goes back further than a startup scaling rapidly in the midst of a global pandemic. It goes down to the unique challenges faced by software engineering teams, and the specific needs for continuous upskilling in a constantly changing technological landscape.
My Onboarding Experiences
In 2006, I moved to the United States from Pakistan to work for Microsoft. If you're unfamiliar with Microsoft's visa sponsorship system, let me tell you: there is no company that does onboarding more effectively or personally.
I had a dedicated coordinator who walked me through getting a social security number, setting up a bank account, studying Washington State driving laws, and setting appointments for driver's license. She showed me my apartment, the local grocery stores, the differences in American culture compared to Pakistani vendors. There was a plan and a system for every worker to get them settled in the US.
Joining the move mailbox team on the Exchange product, I had to learn Exchange's architecture, the change log and migration process, and the scripting languages we were using. This process was a bit less efficient. I met with various team members, read scattered documentation, and learned through trial and error our best practices.
From Exchange, I was moved to a small team building a world-scale distributed storage for Project Red Dog, now called Microsoft Azure. Some of the things we were doing had literally no training because our team created it.
I moved to Facebook in 2013 and went through their famous, six-week developer bootcamp. I learned about how Facebook worked, the process and culture of Meta. They tested me and expanded my own engineering knowledge and approach. Then I was fit to my new team as a data engineer.
With Azure, we were using C99. Microsoft has business reasons for this - a large, installed user base and enterprises dependent on their services - and the engineering talent at the company made it work. At Facebook, I had to transition to C++ 11 (with 14 soon to follow), which required even more learning.
Previous hacks were now features built right into the compiler. New command structures that allowed us to do in the language what we had cobbled from APIs and creative engineering solutions. This all meant that, even after the bootcamp, there was ramp-up time on a new language and Facebook’s own architecture.
Shared Problems
You can take my own onboarding experiences and translate them practically to almost any working software engineer.
Someone’s product is being hosted on AWS, but they’re interviewing for a role that uses Google Cloud Platform; the project is deployed with Docker Swarm, while the GCP product is using Kubernetes. Another is joining a new team that uses React Native and despite having extensive experience, needs to brush up on or even learn JavaScript.
One SME is working another project but needs to be able to contribute expertise asynchronously. The developer wants to learn at home, but one-on-ones are hard to do remotely.
When developers move roles, even within an organization, they’ll need to learn the project and product. They need to learn the existing codebase, and thus the toolkit the team is leveraging. We’ve all had to do it.
These problems are compounded with the scale of engineering teams. In a team of ten, every developer is facing some component. An organization of hundreds of teams and thus tens of thousands of developers?
The reality is developers everywhere, who have never heard of us, are learning constantly. It’s a career imperative for software engineering as new technologies emerge and new products and projects require new integrations. So how do we reach them? How do we keep serving that need to ramp up quickly and deliver world class technical products?
Shared Solutions
A great deal of the Educative product offering has scaled as a direct result of communication with our customers. And our newest effort - an enterprise platform dedicated to engineering enablement - is the latest piece of the puzzle.
I think it was in 2017 that our first partner organization came to us. A computer science bootcamp wanted to use one of our courses as supplemental learning in their curriculum. The only problem was that we had no way to assign group learning. So, we created Teams, a seat management system that could load users and give access to select components.
In 2018, another customer wanted to be able to issue one account to their Team. Having to sign up for Educative, instead of managing access through their existing platform, was inconvenient. We implemented a Single Sign-On solution in a few weeks
With the ability to manage multiple users from a single account, and all those users tied to your internal account platform, Educative had become something of a business solution. A few companies started using Educative courses to keep their technical staff ahead of the curve.
As we spoke with our enterprise partners, we found they faced similar onboarding problems. Like us, they continue to hire engineers; like me, those developers will have to learn new technologies. And just like at Educative, these companies and engineers will have to do so quickly.
This is why we’ve added Onboarding to complete an enterprise offering. In addition to the Teams management system and SSO functionality, organizations now have the ability to partner directly with their employees. Instead of assigning a fixed course, engineering managers can customize plans to address specific needs and career goals.
Software engineers can complete their internal corporate training, but with Educative’s ever-growing library, they can choose their own destiny and dive into whatever software discipline they want to explore. We aim to enable not just companies, but engineering organizations and individual engineers, to reach their full potential.
With teams spread across two continents, and content partners in the other five, we often find it difficult to sync up in real-time, so the platform needed to support remote teams and asynchronous collaboration. Assigning mentors offloads a significant portion of engineering management time commitment while maintaining visibility toward production.
Where We’ve Been and Where We’re Going
Six years ago, we set out on a mission to build a global community of software engineers dedicated to lifelong learning. Our registered users alone account for about 5% of global engineers, and our non-registered traffic coming to are twice that number. In other words, the global community is real.
As the user base grew, Educative has also been growing to keep pace with both the content and technical demands. We more than doubled our headcount last year, and we’ll be close to doing it again this year.
The way for us to continue to impact the global community we’ve built is by becoming a resource where developers are already learning: at work. We’ve always been for developers, by developers; now we get to be for engineering managers, by engineering managers.
I believe sincerely that the path to true engineering enablement begins with onboarding.