Apprentice.at – Apprenticeships, not internships
apprentice.at
apprentice.at
from http://www.upandup.agency/careersjob_id=job_20140721143320_P...
the nerve...
You know, many young kids actually have a Mac already, and if not, a new Mac and a monthly subscription for Adobe costs a fraction of what 3 months in college costs.
And if you've already spent a couple of years in college studying literature, algebra, music, philosophy, psychology, introduction to business and what not, you might just want some practical experience that within a few months could actually land you a job that provides a decent paycheck.
you might just want some practical experience that
within a few months could actually land you a job
that provides a decent paycheck.
It always struck me as ironic that student engineers, who are on track for well paid jobs, get offered paid internships; but student journalists, who are on course for poorly paid jobs, are expected to do unpaid internships - or even pay to do internships.In this case, the people with the greater ability to pay have to pay less.
That seems ironic to me, even though I know enough about the economy to understand why it happens.
Also newspapers are well known for poverty level wages even when they had 30% profit margin.
A major publisher can pick and chose from ox-bridge grads who got a first.
Any role I looked at there had significant requirements. "Must have intermediate knowledge of Swift" etc etc.
That's not how apprenticeships work. If anything, this is a far worse version of an internship given that some of them are measuring the tenure in weeks.
Edit: Hah. "Our apprenticeship is not a junior role. The majority of people who join thoughtbot as an apprentice leave a job working as a developer or designer to join us. Because it is such a high bar, even people who have been working in the industry for many years may not make it through the interview process."
Insane. You've somehow managed to find a way to destroy the value of employment even further.
The value of "work", I would say.
But yeah, corporatism is insanely good at it, and worst of all, in a subversive way. The society (through education and others) is being silently shaped by corporatism tenets so that, by now, even grassroot-like movements - not at all affiliated with the major "interests" - live by these ideals.
And as some one who actually came into work (R&D based on campus at Cranfield) via the vocational route as a whats now called professional or higher apprenticeship.
Back in the day if you had called us "apprentices" I and my pears woudl have told you to F%^K off.
Most of us where in the civil service hierarchy in terms of actual job title.
Research Assistants , Assistant Scientific Offices Scientific Officers.
If you have requirements for your role, then that's ok. But then it isn't an apprenticeship, it's an internship, and it's no different to all the other internships out there.
An apprenticeship doesn't have to be four years, but in 3-months I don't see anyone gaining any real fundamental depth of learning. Surface level skills? Sure.
If this was a genuine "Apprenticeship" I'd expect anything from 18 months+
I found that after three months, I was just getting to the point where I could make meaningful contributions. For my two four-month co-ops, this meant that I hardly got to contribute. I really preferred the eight month co-op term, where I felt like I was much more part of the team.
However, I don't think apprenticeships are a good fit. The apprenticeship model is great for skills that do not change rapidly or need frequent updating. Carpentry five years ago is much the same as carpentry today. This works well because in such areas, you can afford to gloss over or just skip many fundamentals because the hands-on skills are all that will be needed for a multi-decade career.
This model doesn't map well to development. Current technologies move fast. Adapt rapidly. One year's hot approach is the next's old broken crap. Our educational systems need to be designed around enabling people to adapt rapidly. The only way I know to do this is to teach people the fundamentals they need to adapt to anything within their field.
I'm happy to entertain other approaches, but this seems like hammering a round peg into a square hole because using a square peg is inconvenient.
This is a good opportunity for somebody.
I think the situation we're in is an uncomfortable one. Basically, the tech world needs people, and the four-year approach seems too slow. Sadly, nothing I've seen - and I've been affiliated with a bootcamp - seems to both provide the people required and give them the grounding for a career.
We as an industry have this burning need to believe that there must be something better. However, I submit that this is the equivalent of protesting "There must be a better way!" when confronted with an uncomfortable policy decision. In both cases the sentiment is laudable, but fails to conjure the alternative into being.
It is a good opportunity for somebody. As near as I can tell, that somebody is the four-year CS programs of the world.
The only alternative I can see is bifurcating development work into high-skill people who know CS and low-skill code monkeys. I'm uncomfortable with this, but I suppose it could be workable. We'd just have to disabuse all those code monkeys of the illusion that they're going to become computer scientists.
These apprenticeships are for like $500/week. That's not a good opportunity for some in a four-year CS program.
I'm saying that the alternative models proposed are even worse fits for the problem than the model considered lacking. This isn't a field currently structured for a relatively short training period to lead to a typical career.
Maybe medicine should be the goal model. Doctors and nurses, code monkeys and software engineers.
You don't need to relearn imaginary numbers or assembly programming to be a good software developer.
You could start them with a job. They'd have, by their standards, a great job. What they almost certainly wouldn't have is a typical career in software engineering following that job and the obsolescence of their skillset.
But for most of the programmers I know, they're just writing code that runs a business which is certainly not IT.
Current technologies do not move fast, because computer science and maths in general are still hard.
This year's "hot" approach isn't fundamentally different from last year's hot approach, and it won't be fundamentally different from next year's hot approach.
Our educational system needs to be designed around enabling people to understand the fundamentals of what they're doing, instead of code-by-marketing. Those fundamentals do not change rapidly; the books have a lifetime measured in decades, not days, and they provide the background necessary to evaluate, understand, implement, or reject any of those "hot" new approaches.
I think we're in violent agreement. If you know your CS and mathematics, the current hotness is stuff you can grasp. If you don't, odds are you're in trouble.
To be able to take this decision seriously, you have to understand the big picture, which doesn't change fast.
Yes, technology moves fast and if one wants to stay current in the field, one has to keep learning.
But the fundamentals remain the same. It has been forty years since TAoCP was published for the first time. Has it become irrelevant? Hell, no. Has logic or maths changed because of this year's fad? Of course not.
Is four years a long time? Not if you want to give a young person a thorough education and a solid understanding of the craft, from the foundations up.
Instead, you know, of just train them to hammer out code in the currently most hyped language, without really knowing what they are doing and why it all works.
Teach concepts, not implementations.
Edit: Typo, standpoint clarification.
I guess I'm biased here; I grew up in Switzerland and did an apprenticeship in IT. Also, the company I've been working for the last five years has had apprentices since it's very beginnings and most of the apprentices chose to stay afterwards.
That is what I am saying is a poor fit. None of the items on this list, last I looked, are four-year apprenticeships that include CS fundamentals.
Most IT jobs start after the level of an apprentice.
Its more the perception that you will give others that "professional" software development is a lesser profession.
The other professions call this CPD imagine a junior doctor being told now you have your md your going to be doing an aprentiship the AMA would go nuts!
Coming from a vocational bg the idea was you took kids at 14/15/16 they then did a craft apprenticeship for say 4/5 years - spending the first year fileing and fetching tea
Then if you where intelligent you did the technician level course which took another 4 years
This was about 10 years ago and I don't know how much has changed since. I do like the system, but looking back the first thing I would change is getting rid of all the vendor/Microsoft specific courses and add stuff like algorithm design and analysis, data structures etc. Also some international recognition of the degree would be a nice to have:)
These "apprenticeships" are little better than bootcamps. They skip all the fundamentals in favor of whatever the language du jour is.
Oddly enough, the changes you suggest would bring your apprenticeship roughly in line with the four-year Bachelor's program I did here in the US. Perhaps this isn't a coincidence.
Yes my suggested changes would bring it roughly in line with a Bachelor but while working in an actual company and earning money.
The real problem (imo) is that while there's a huge demand for developers at the end of the day it's still hard to program well and there's a potentially strong penalty on being sloppy while learning and on top of that the opportunity cost of people nurturing you from zero/a low level is pretty high. There's a difference between being able to glue working stuff together and understanding an existing codebase. Most jobs require the latter and solid engineering principles on top. I'm afraid there is no hotfix/silver bullet.
Call this apprenticeship or whatever you want, I agree that the right step is taking time to develop talent even if it costs you money now. But the downside is that the workforce is ultramobile so you may invest a lot for no return.
I think the management trainee programs of bigger companies could be an interesting model to investigate. They are essentially meant to groom and train future >middle management through on the job training in all areas of the company.
But what I see here is a very different than that. Most of my students wouldn't financially apply, let alone make it for skills.
Some of the ads even state that people with industry experience wouldn't even make it through the interviews... so this looks at first glance like a way to get some cheap labor from semi-experienced developers.
I don't know if that's what I want to see from our industry, and it makes me a little sad.
...because my understanding of apprenticeships is that they are very very different to this concept (maybe it's different around the world - I'm from Australia).
To be good enough to try out at thoughtbot on a little less than Australian minimum wage, their baseline expectation is that you've already designed and shipped an app, probably work as a designer/developer for another company and are prepared to wait "several months" for them to deign to reply to you.
On your knees, serfs!
If I'm not mistaking, the current software "craftsman" and "apprenticeship" movement has been largely influenced by Dave Hoover's Apprenticeship Patterns (free on the web): http://chimera.labs.oreilly.com/books/1234000001813/index.ht...
A few quotes from that book:
============================================================
This book is written for software apprentices—for people who have had a taste of developing software and want to take it further, but need some guidance. Whether you have a college degree from a prestigious computer science program or are entirely self-taught, you recognize that there are great developers out there, and you aspire to achieve the same mastery that they possess.
...
When discussing what it means to be an apprentice, Marten Gustafson, one of our interviewees, put it best when he said, “I guess it basically means having the attitude that there’s always a better/smarter/faster way to do what you just did and what you’re currently doing. Apprenticeship is the state/process of evolving and looking for better ways and finding people, companies and situations that force you to learn those better/smarter/faster ways.” We think there’s a lot of value in having this internal drive that is not dependent on anyone else to bestow solutions upon you, and that leads you to find constructive ways of dealing with problems.
...
Apprenticeship is the beginning of your journey as a software craftsman. During this time you will be primarily focused inward, intent on growing your craftsmanship. While you will benefit from the attention of your peers and more experienced developers, you must learn to grow yourself, to learn how you learn. This focus on yourself and your need to grow is the essence of what it means to be an apprentice.
============================================================
In my mind, the key difference between an internship and apprenticeship is the focus and purpose. Generally, a company hires an intern as a cheap way to get extra help. Sure, they will help the intern as needed, but primarily so they can accomplish something for the company.
Whereas, when a company takes on an apprentice, the primary focus is on providing an awesome, safe learning environment. Sure, the apprentice will likely do something of value for the company, but that's a side benefit.
Also, generally people think internship == work while apprenticeship == learning.
So technically there may not be a lot of difference, but I argue that the difference in paradigms has a large impact.
---
I'm not familiar but any of the other apprenticeships, but Sparkbox's is much better than what's generally being discussed in the other comments here. You don't need to already have significant experience to join. All you need is an interest in web development. See more here: https://github.com/sparkbox/apprenticeships
So don't let one company's program taint your view of the rest!