00:00:10.639
Okay, so it is 2:40, so I'm going to go ahead and get started. I'm going to be talking about power-charging apprenticeship programs today.
00:00:17.609
And you are probably wondering, who is this lady? Hi, I'm Louisa Barrett.
00:00:23.820
I work at the Turing School of Software and Design. I am the founding instructor and I'm currently the director of the front-end engineering program.
00:00:33.690
That means that I work with this guy. So I don't know if you're familiar with Turing, but this is Jeff Kazmir, our founder.
00:00:39.480
He's not here today, so I can pick on him a little bit. So back to me.
00:00:45.180
Now, since then on the front-end team, I like design, I like code, and I also like teaching.
00:00:55.949
That means that I basically spend my days helping people learn about typography, JavaScript, and, if you will excuse my French, CSS.
00:01:03.650
I am extremely bad at Twitter, but this is my Twitter handle.
00:01:08.939
It's really embarrassing how bad I am at Twitter, so just don't judge me.
00:01:14.520
Um, so I'm a front-end person. I am at a Ruby conference, so that's weird. Why am I here?
00:01:27.240
Firstly, I am extremely good at Ruby, as you can tell. Hey, this is mostly jokes. I'm good at it. Okay, woo!
00:01:40.530
All right, anyway. So what I'm actually here to talk about is apprenticeship.
00:01:46.320
For the last couple of years, my whole job has been figuring out the best and most repeatable techniques to get people ramped up to junior developer skill levels quickly and consistently.
00:02:06.030
Obviously, I'm working in a school, so I'm in a more education-based environment, but that's essentially what an apprenticeship is.
00:02:18.330
It's just in a little bit more of a business-minded format rather than an education-based format.
00:02:32.220
I do this a lot; this is my job, and I just wanted to talk to you about it.
00:02:38.700
Part of that is because my background is in design. I was a designer for a very long time.
00:02:49.890
I've been in the creative industries for many years before I switched over to writing code.
00:02:55.739
It was really interesting to me coming from the creative industry, where apprenticeships and internships are part of the game.
00:03:01.470
It's a little bit expected that you will have had some sort of apprenticeship or internship before your first real job.
00:03:10.859
Often, because it's a creative industry, those internships or apprenticeships are unpaid.
00:03:16.079
This is often because of reasons like gaining experience or being passionate about it, which is a load of crap.
00:03:22.200
But it was really interesting coming into software development because the mindset around them is very different.
00:03:34.290
They were a little less common, and I think people took them more seriously.
00:03:40.310
Part of the reason for that is because there's an expectation of fair compensation for work in this industry.
00:03:46.919
That's a fantastic thing, right? It's great! It means that people take it more seriously.
00:03:53.790
However, that also means that there are potentially fewer opportunities to get your foot in the door in an apprenticeship-type situation unless you're at a large organization with more wiggle room and funding.
00:04:10.319
The thing is, apprenticeships are really valuable to teams. They provide great experiences for both the apprentice and the team they're working with.
00:04:21.810
The biggest thing is to structure them correctly and be mindful of how you're putting them together.
00:04:27.080
Setting up a successful apprenticeship is not impossible. It is not scary, and they really are worth it.
00:04:39.669
It's so energizing to have somebody new to the industry as part of your team. They are incredibly motivated, really excited, and fun to work with.
00:04:50.960
They see things from new perspectives and different angles, making it all really exciting.
00:05:02.479
Yes, all of you could build a successful apprenticeship program, and your team will be significantly stronger for it.
00:05:15.310
If you think that an apprenticeship program seems like a high-risk time and money vacuum, and you're wondering if that investment will pay off, yes, it will.
00:05:29.449
In my experience, the benefits to the team and to the general company ecosystem are substantial.
00:05:36.529
Bringing on an apprentice is a great way to reenergize a team.
00:05:41.870
Even if you have just a team of senior people, bringing on someone brand new can add a lot of joy and fun to the group that you may not expect.
00:05:55.719
Remember, this isn’t a forever thing for either party. An apprenticeship is a term thing; someone’s going to grow out of it.
00:06:13.909
They’re going to become a junior developer, then a mid-level person, and eventually a senior position down the road.
00:06:25.849
So, they are super motivated, they know there’s a light at the end of the tunnel, and they’ll be working hard to improve.
00:06:36.620
Investing in them at this stage in their careers is beneficial for both you and them, and it will pay off quickly.
00:06:43.430
In conclusion, you absolutely can have an apprenticeship program.
00:06:48.530
They will make your team better, and you'll have a lot of new and funny jokes!
00:06:53.539
So, the plan is that you should have one!
00:07:00.169
Before you get started, the very first thing to do is to ensure that your whole team, so top-down, understands the point of an apprenticeship.
00:07:12.770
It is an educational learning relationship, meaning you are bringing someone on who is there to learn from you.
00:07:20.389
You've committed to teaching them for a set amount of time.
00:07:25.729
We’re going to discuss some strategies that will help teams plan and prepare for a successful apprenticeship program.
00:07:31.969
There are three phases of planning that I'll be talking about today.
00:07:38.659
First, what to do before you start an apprenticeship—like systems and processes to have in place.
00:07:44.569
Second, how to hire for an apprenticeship—finding the right candidate and hiring the right person.
00:07:49.969
Lastly, what to do during the apprenticeship—how to keep someone on track, ensure they're making progress, and keep everything running smoothly.
00:07:55.250
With that in mind, let's dive right into what to do before you start an apprenticeship.
00:08:00.740
Like most things worth doing, this will take a little bit of work to put together, and that's okay. It's similar to when you start a new client project or software project; it requires planning.
00:08:14.840
Before you begin interviewing candidates, you should invest about five to ten percent of your time upfront.
00:08:20.330
This will help ensure that you have clear goals and a game plan to execute throughout your program.
00:08:28.190
The work you put in should begin even before you start thinking about interviewing candidates.
00:08:34.699
This effort will pay back tenfold once you actually bring someone on to your team.
00:08:41.089
So something to consider before you get started is to clarify the reasons behind initiating a program.
00:08:47.660
This is really about understanding the motivations driving you to start a program like this.
00:09:02.189
There isn't necessarily a wrong motivation or a right motivation, but different motivators will impact how you approach a program.
00:09:11.160
Understanding why you're bringing on an apprentice is crucial to set the right tone.
00:09:16.680
The reasons might range from purely educational, like wanting to help someone get a foothold in the industry,
00:09:24.810
to financial needs where a smaller company needs more hands on deck, needing someone whose skills are not at a high level yet.
00:09:32.880
Both are valid reasons, but being clear with your team and the apprentice about your motivations will align expectations.
00:09:40.620
Additionally, this clarity will ensure that your planning and execution are aligned.
00:09:46.650
Make sure that you approach carefully, hire strategically, and develop an actionable curriculum that sets your team for success.
00:09:55.920
Before hiring anyone, ensure you have buy-in from your entire team.
00:10:00.410
This top-down buy-in means that everyone—especially management—needs to understand the reasoning behind the apprenticeship program.
00:10:10.410
Your team should also be on board, understanding that this is an initiative they're excited about.
00:10:22.050
Being on the same page about how time and energy are allocated for this program will help streamline the process.
00:10:30.680
The clearer you are about the path to success for the apprentice, the easier it will be for the team to say yes.
00:10:39.420
So here are some strategies to help communicate your plan effectively.
00:10:46.560
Make your case by having a defendable business and team-building reason for why adding this position will benefit everyone.
00:10:55.730
Be explicit and direct about everyone's responsibilities when you bring someone new on board.
00:11:02.760
This clarity will help your team understand your plan better and provide stronger support.
00:11:10.930
It’s crucial to have management understand the value of this program.
00:11:15.340
Presenting a strong case for this will ultimately lead to better support and cooperation across the team.
00:11:23.110
You will need someone to own this apprenticeship, acting as the primary mentor.
00:11:30.020
Ensure key team members have adequate bandwidth in their schedules.
00:11:35.920
It’s vital to address any scheduling issues upfront so that your team doesn’t feel overloaded.
00:11:42.650
Remember, teaching can make your team stronger. The act of explaining concepts to a beginner sharpens the skills of the whole team.
00:11:50.540
Bringing someone junior provides opportunities for seasoned professionals to refine their knowledge and teaching skills.
00:11:58.580
Bringing someone in who lacks exposure encourages the rest of the team to think critically about their processes.
00:12:08.650
Be clear about how the apprentice's time will be spent and how they’ll ramp up to become more billable alongside their training.
00:12:16.450
Initially, they won't be billable, but as they progress, they should contribute more to the team's output.
00:12:24.170
Now let’s talk about backwards planning, which will happen concurrently with your team buy-in conversations.
00:12:32.129
This is essentially curriculum planning. It helps you make a strong case for why the apprenticeship is achievable and sets a game plan for structure.
00:12:46.270
Backwards planning involves figuring out where the apprentice needs to end up by the end of the program.
00:12:55.470
From there, you work backward to create a structured process that leads them there step by step.
00:13:03.010
This involves creating super-short curriculums that break down the skills and competencies needed by the end of the program.
00:13:10.050
Start at the most significant picture view and work from there towards granularity.
00:13:18.720
List the skills and competencies you want them to master and create a plan of action each week.
00:13:27.740
Evaluate what success looks like at each stage of the apprenticeship.
00:13:34.560
You will also need to recognize that not everyone learns the same skills at the same pace.
00:13:42.370
Having a plan ready for when someone starts falling behind is essential, as each individual will have strengths and weaknesses.
00:13:52.620
Be clear about how someone can assess their skills and improve.
00:14:00.930
It’s important that everyone is on the same page, both your team and the apprentice.
00:14:06.240
Tracking progress after the apprentice starts is also an important phase.
00:14:15.960
This can be tricky because you have several aspects that need attention.
00:14:22.170
Having a clear rubric allows you to measure progress against concrete benchmarks.
00:14:28.560
This can include a tiered scoring system or ranking process from novice to expert.
00:14:35.260
Whatever system you choose, it should be straightforward to understand.
00:14:42.170
Use clear steps explaining how to advance from one level to the next.
00:14:49.490
Be mindful of language; the way you phrase things matters greatly, particularly in a learning environment.
00:14:56.890
Using encouraging language helps foster a positive experience while learning.
00:15:05.450
For example, at Turing, we have a simple four-level progression ranging from novice to exceptional.
00:15:16.540
This helps the apprentice understand their progress and what is expected of them.
00:15:24.370
Similarly, breaking down more intricate skills like version control into steps will facilitate learning.
00:15:33.450
This level of transparency empowers apprentices to self-assess their understanding.
00:15:39.830
This self-assessment means they are not entirely reliant on your guidance to navigate their progress.
00:15:49.070
Once you have everything set up, you can invite your apprentice to start.
00:15:56.880
At this point, ensure your preparations are solid—team buy-in, game plan, and clarity on goals.
00:16:02.750
The next task is to find the right apprentice. This process is not very different from hiring for a developer position.
00:16:10.470
The difference is that you’re investing in a future prospect rather than a proven candidate.
00:16:17.220
It will require a bit of finesse, as you are searching for someone with potential instead of someone with an established track record.
00:16:27.800
A significant part of my job is quickly assessing who has the right personality and attitude to succeed.
00:16:35.660
It requires someone who can navigate a less supported environment and thrive.
00:16:43.380
Most companies have a structure around evaluating candidates for roles, which is essential for apprentices as well.
00:16:50.280
Consider your goals for the apprentice and where you want them to land at the end of the program.
00:16:58.220
Do you want someone hotshot from the start, or someone who can dive deeply into your codebase and stay with you for a while?
00:17:05.700
These choices will dictate how you approach your hiring.
00:17:12.820
Consider group dynamics when selecting your apprentice.
00:17:19.320
There’s a concept called the 10-80-10 rule. Groups will typically have the top 10% of high achievers, a middle 80% of stable workers, and a bottom 10%.
00:17:29.740
Focus on hiring from the top and middle groups based on your long-term goals.
00:17:36.330
Your hiring should reflect the qualities you desire in an apprentice.
00:17:44.770
Engagement, curiosity, and a willingness to investigate on their own are crucial traits.
00:17:52.529
Look for apprentices who can find ways to make learning fun, which will enhance their experiences.
00:18:02.250
Also, value loyalty—those who stay the course during difficult times.
00:18:10.360
An apprentice should be vocal and honest, willing to communicate openly with you.
00:18:18.060
They should have high standards and be dedicated to the work assigned.
00:18:24.560
Grit and good-natured attitudes will contribute positively during their learning.
00:18:32.040
You’ll want to ensure candidates can demonstrate these traits in interviews.
00:18:39.890
Pay attention to their responses—are they providing examples from personal experience or just telling you what they think you want to hear?
00:18:46.990
Use situational questions and seek real examples that reflect their experience.
00:18:53.980
Many hiring processes overlook code challenges, but this is crucial for apprentices.
00:19:01.340
Knowing where their skills stand on day one will help shape your training and support.
00:19:08.550
Keep your end goals in mind; what does success look like for your apprentice?
00:19:16.280
You prefer someone who can contribute to the team long-term versus only through the program.
00:19:23.830
Be mindful during your hiring process to gauge appropriately and ensure alignment.
00:19:31.540
Once you've done all your planning and hired the right person, it's time to bring everything together.
00:19:40.270
Onboarding someone entering the industry can differ from someone already established.
00:19:47.680
Create a central location for important links and documents so everyone is on the same page.
00:19:55.410
This could be a Google Doc, a calendar, or another shared platform that makes information accessible.
00:20:02.560
Include necessary resources, such as which repos they will access and the onboarding tools they’ll need.
00:20:10.080
Outline communication channels they should join, whether it’s Slack or any other messaging application.
00:20:18.720
Also, include details about meetings they need to attend so they aren’t left in the dark.
00:20:24.810
Make sure they have a syllabus and schedule.
00:20:32.960
The syllabus should map out expectations and clearly outline learning targets, resources, and assignments.
00:20:43.270
Providing checks for understanding is essential, as this will ensure everyone is on the same page.
00:20:50.780
Regular evaluations of progress during the apprenticeship is important.
00:20:57.820
Have a rubric to measure skills that allow for tracking both qualitative and quantitative progress.
00:21:04.070
Assignments will be necessary—they need to contribute toward gaining experience and competence.
00:21:12.200
You could create a project—what I call a breakable toy—owned by the apprentice.
00:21:19.120
This allows them to code safely without the fear of breaking a production application.
00:21:28.150
Encouraging a fun atmosphere where they can explore and learn is crucial.
00:21:40.210
An apprenticeship should be a safe space for trial and error—failures are part of the learning process.
00:21:51.180
Encourage them to keep trying, and when they fall short or break something, guide them in fixing it without doing the work for them.
00:22:03.270
Let them own the challenges while supporting them along the way.
00:22:10.360
What if the worst happens? What if you hired someone you felt was a good fit, but things started going sideways?
00:22:17.900
It’s better to be upfront about the situation and recognize when things aren’t working.
00:22:23.170
Sometimes, apprenticeships may drag on longer than they should, which doesn’t help anyone.
00:22:33.250
If it's not working out, don't hesitate to be honest about that. Call a spade a spade.
00:22:41.310
The ending of an apprenticeship says a lot about your team. Handle endings gracefully.
00:22:48.950
Being respectful and supportive during the transition period helps maintain a positive reputation.
00:22:57.110
Thank the people who have assisted you throughout this journey.
00:23:11.020
For self-mentorship, there are several great resources and open-source curriculums available.
00:23:19.390
Many schools provide accessible course curriculums, such as Spark Box, which offers clear paths to follow.
00:23:27.120
This backward planning strategy remains valuable as you determine the skills you want to develop.
00:23:34.780
Taking small, consistent steps forward will ultimately lead to progress.
00:23:41.320
As for the value of apprentices working in cohorts, it often mirrors the benefits seen in traditional education systems.
00:23:51.350
Having a group of individuals at similar levels can foster collaboration and a supportive environment.
00:23:59.200
On the other hand, sole apprenticeships can challenge individuals, pushing them to engage with others despite their apprehensions.
00:24:06.620
Having a network of apprenticeship peers can be beneficial, and I encourage forming supportive cohorts.
00:24:15.210
Internal biases can influence hiring decisions; structure your interview process to accommodate diverse experiences.
00:24:22.210
Create an atmosphere where all voices can emerge through effective outreach.
00:24:30.920
Ensure that expectations regarding billable work versus non-billable work during the apprenticeship are well communicated.
00:24:39.230
Initially, more focus should be on non-billable tasks as they learn, but should shift toward contributing to billable work over time.
00:24:48.420
By the end of apprenticeship, they should be performing like a junior developer.
00:24:55.869
Thank you for your attention!