00:00:24.310
Hello, everyone! I'm glad to be here, and I'm happy this is working. My name is Bree Thomas.
00:00:31.189
I come from a marketing background, and I like to say I’m a recovering marketer. I've been clean for about two years now. It was a great career, as great as it can be when working in the dark arts. I loved it. I made the switch from marketer to developer by attending an intense coding camp for about six months.
00:00:49.879
Since then, I’ve been employed as a formal developer for just over a year and a half. I work with a company called Mota, which is a development firm and product consultancy based in Denver. On my team, I am the only member with less than 13 years of experience, and I’m also the only woman. This can often be quite intimidating, but I feel very lucky to be working with what I consider masters of the craft.
00:01:05.000
I also run the Denver chapter of Girl Develop It, where we strive to provide professional-level software education to women in a judgment-free environment. I promise this will be the last logo slide you'll see! Old habits die hard. The topics of developer growth and training, particularly apprenticeships, are very near and dear to my heart, and that's what I want to talk about today.
00:01:41.000
Specifically, I find apprenticeships to be a little scary—not just for apprentices but also for employers. I want to discuss what's scary about them, what's missing, and what's important in developer apprenticeships. How should we value our apprentices and how should we structure our programs?
00:02:00.770
Before we get into that, let me share the inspiration for this talk. One source is 80s films. The phrase 'Burn rubber does not mean warp speed' comes from an 80s cult classic called The Lost Boys. I'll show you just a two-minute clip from that movie.
00:03:30.970
Be moving down market. Shut up! We are grounded in the face of the enemy. It's not our fault they pulled the mine scramble on the silver. Nice talk! I'll drive. We don't ride with vampires.
00:03:36.800
Fine, stay here. We do now. Yeah, burn rubber!
00:03:55.569
Ah, Christ! Burn rubber does not mean warp speed!
00:04:09.640
Not to seem overly dramatic, I don't believe developer apprenticeships are nearly as scary as blood-sucking vampires, though it might depend on who you ask! I love this scene because it captures the urgency of a young man, Sam, trying to save his brother from a gang of vampires just before nightfall. He frantically speeds off, risking their lives to escape. In that moment, he reminds the others that burning rubber does not mean driving at warp speed.
00:04:38.120
The essence of this line is that working hard and being passionate does not equate to moving at a predetermined speed. Speed itself isn’t necessarily a primary indicator of progress or success, nor in extreme cases, survival. Throughout my training and apprenticeships in developer programs, I often found myself fixated on how fast I was coding and learning. I was continually anxious about whether I would meet the expectations of knowing everything by a certain deadline.
00:05:01.000
This anxiety lingered for ten months, and even now I occasionally struggle with it. Thankfully, I've come to understand that I can bring value to my team beyond just my coding skills. I've also learned to be kinder to myself regarding my learning process. It was crucial for me to overcome the pressure of needing to constantly achieve a level of performance that I wasn't ready for.
00:06:03.440
The journey to finding balance was difficult and often involved moments of paralysis due to my anxiety. I began discussing my feelings with fellow developers and former classmates, leading me to explore apprenticeships within our industry. To get the conversation rolling, I conducted some research on historical apprenticeships.
00:06:38.120
Historically, apprenticeships provided on-the-job training for newcomers in particular trades. This training incorporated reading and classes, but the majority focused on practical experience in the field. Historical apprenticeships began in the Middle Ages and consisted of various levels, the first being the apprenticeship itself.
00:07:14.200
An apprenticeship would last about seven years, during which the apprentice would work under a master craftsman, usually compensated such that they wouldn't have to worry about basic needs. Following this period, apprentices would transition to journeyman status for roughly three years, during which they explored other techniques and practices under different masters. Upon completing this phase, one could apply to become a master craftsman.
00:08:14.410
Selecting a slide portrays mastery, and I think that once you can drink and smoke while practicing your craft, you've achieved mastery. While I haven't reached that level, I work with people who are adept at cocktailing and coding, and I aspire to that!
00:08:56.290
Let’s also consider modern apprenticeships that we’re probably familiar with. For example, how long do you think the apprenticeship period is for doctors? I've heard estimates ranging from two years to five years, and in some cases it can be up to eight years depending on the specialty.
00:09:40.080
Similar questions can be posed regarding electricians, who have apprenticeship periods ranging from one to four years, while traditional engineers have a three to five-year apprenticeship. Then we have tattoo artists, whose apprenticeship can last up to 125 years!
00:10:01.430
From my research, a few key takeaways stand out. First, apprenticeships take years and are very methodical. Second, there are specific requirements before achieving the title of master, which involves a commitment from both the employer and the apprentice. They must invest invested in this process.
00:10:39.540
Now, let's address what's scary about developer apprenticeships. There’s a strong emphasis on speed in modern developer training programs. Everywhere you look, there are programs boasting training periods as short as 24 hours or as long as six months. Yet, in many cases, these apprenticeships are not much longer, with the majority falling under a year.
00:11:20.840
This rapid pace sends a message that becoming a developer is a quick and easy endeavor—just check that box and collect your paycheck. But as developers, we know that our work is complex and ongoing; constant adaptation is key, and becoming proficient requires passion, patience, and sometimes a bit of craziness.
00:11:53.390
Another frightening element in developer apprenticeships is the prevalence of assumptions, which can lead to significant misunderstandings. Employers often assume apprentices will be vocal and open, which is rarely the case. There's also the misconception that senior developers are automatically qualified to teach junior developers, which isn't always true either.
00:12:38.990
On the apprentice side, assumptions abound as well. For example, many assume that completing a modern development training program guarantees immediate employability and handsome compensation. They might also think that the trajectory from student to senior developer is filled with clear, well-defined stages.
00:13:03.450
While we may not agree with David Brin on the severity of unchecked assumptions, we can all acknowledge that failing to address them can lead to negative consequences. That's particularly evident when discussing measurement programs.
00:13:48.519
Measurement, in and of itself, is not inherently scary, but employing a one-size-fits-all approach can impose limitations. Creating a generic program with one specific layout that all apprentices must follow can hinder individual learning styles, strengths, and weaknesses. Additionally, limiting how we value an apprentice only to hard coding skills misses other vital attributes, such as their potential fit within the team.
00:14:39.840
Also, a common pitfall occurs when employers commit to evaluating apprentices but then fail to follow through. This often results from the daily pressures and hectic nature of work, leading to evaluations being overlooked. When this happens, both the employer and apprentice miss valuable opportunities for constructive feedback and improvement.
00:15:35.160
In summary, the fears surrounding developer apprenticeships include neglecting assumptions that could lead to negative outcomes, and focusing on incorrect metrics. So what’s missing in our industry regarding apprenticeships? A distinction between profession and skill.
00:16:24.910
Many developer training programs teach skills but often neglect to educate students on the business of building software or how to navigate team dynamics. The time to develop as an apprentice often gets cut short due to the pressures of project timelines and resource availability.
00:17:23.450
Additionally, when senior developers take on apprentices, they may need support to structure a curriculum tailored to individual needs. This brings us to what is truly important in apprenticeships: acknowledging that development is about more than mere coding skills.
00:18:15.310
It demands a mindset shift, recognizing that a career in development is more than a job that involves writing code. It requires investing time in developing strong mentorship.
00:19:12.500
In terms of key components necessary for effective apprentice programs, it’s crucial to ensure that self-directed learning is not the only expectation placed upon apprentices. Employers must actively engage and demonstrate that they value the apprenticeship. The time to fulfill these obligations is crucial.
00:19:59.590
Boiling down to the essence, I spoke with numerous developers and apprentices, asking them whether they believed it was possible to achieve senior developer status in just one year. The overwhelming answer was a resounding no! Many stated they wouldn’t consider such a title for two or three years.
00:20:44.080
Why is that? Because there’s simply no substitute for experience. Successful musicians and athletes all share a common denominator—intensive practice over time. Malcolm Gladwell’s concept of 10,000 hours gets repeatedly mentioned in the context of success. Historical apprenticeships, lasting seven years, really illustrate the value of time that’s often not afforded in modern developer apprenticeships.
00:21:30.710
So why is the length of time in an apprenticeship so vital? Apprentices must understand the difference between learning a skill and effectively applying it. The more you practice, the more adept you become. We want our apprentices to exercise autonomy and become creative problem solvers who think for themselves.
00:22:44.870
Employers who invest in a comprehensive apprenticeship program designed to create innovative developers will find they can retain their apprentices in the long haul. They’ll presumably see valuable returns on this investment.
00:23:38.860
Now, let me share a few ideas that may seem a little radical but could help spark innovative thinking for your own apprenticeship programs. First, structure your apprenticeship programs for a two-year duration. Assign the title of apprentice and ensure they are paid fairly, alleviating financial pressure so they can focus on the work.
00:24:16.770
You don’t need to pay excessively, but if they excel, consider a pay increase. However, it is vital not to alter their title for a minimum of two years. After this period, provide them the opportunity to apply for further apprenticeship or the title of junior developer, with an understanding that they will work for your company for an additional year post-apprenticeship.
00:25:04.370
Secondly, view apprenticeships as a product. When hiring senior developers, emphasize the importance of fostering the apprenticeship program as a critical element of their job, allowing them ample time to engage in mentoring.
00:25:56.490
Another suggestion is to consult educational professionals. Many teachers have summers off and might appreciate a consulting fee to assist you in structuring a well-rounded apprenticeship program. Moreover, consider introducing an internal journeyman model to give apprentices a well-rounded perspective.
00:26:40.550
Encourage them not only to write code but to observe and participate in other team functions, fostering their integration into the business as a whole. This approach enhances an apprentice’s sense of value, which in turn significantly impacts their performance.
00:27:24.515
And that's it!