Web-Era Trade Schools, Feeding a Need for Code
nytimes.com
nytimes.com
A few things:
1) Bootcamp graduates shouldn't lead to poorly written codebases if they are being mentored properly. This means good code review at a minimum, as well as pairing, as well as onboarding and assigning appropriate tasks. If you are a company bringing on junior developers and just letting them loose in a codebase you are doing a disservice to those junior developers - they are going to feel exhausted and overwhelmed and lost most of the time - as well as to the rest of your team (trying to deal with their code) and your clients.
2) No one should be claiming that you can come out of a bootcamp with the same experience as someone that's been coding web software for 3+ years, but you come out with a solid foundation in a framework, with basic coding skills, and a hunger for learning more.
3) Demand for coders is still outstripping supply. Demand for experienced coders even more so.
--
Arguably we are stuck with the 10 week-3 month model though. I think the 6 month model offered by Turing School makes a lot more sense, up to a year.
I have a lot more thoughts about bootcamps but these will do for now.
Even as someone who has been "doing this for a while", the amount of stress and feeling underwater that comes from a job that doesn't onboard sufficiently (or at all) compared to one that has good mentoring is astronomical. As a caveat, this may be an effect of my terrible habit of switching concentrations every 2-3 years (prototyping->security->ops/sysadminning->research->'industry programming'), but the amount of extra productivity I could have given my employers had they better smoothed new team transitions (even in such simple things as having organized and non-silod documentation) I would hope could motivate positive change, since it benefits all parties.
I wonder if the number one employer of these graduates are web consultancies, whose clients are effectively footing the bill for their continued training.
Good code bases are built in a way that you can pay down technical debt while enhancing the product.
I view programming as more of an art then a science, people can learn knowledge quickly, the internet is great at that... but talent/skill requires years of experience. Art requires practice.
The more schools like this are successful, the more job opportunities i'll have :D
(EDIT: I should clarify, I'm not implying that these places will churn out bad coders, just inexperienced ones)
It means there's a lot more opportunity out there, for both experienced coders and people looking to break in. Just like oil and other resources, the more supply that gets pumped in, the more demand blows up for all tiers.
We're all going to be very, very busy for the foreseeable future.
While the media paints the camps as "get a great paying job", I see more people wanting a more meaningful life. They've got an expensive degree in English or something similarly un-useful and want to work on things that matter. They see coding as the path to get there.
I studied both CS and English in college, and got my degree in English. The communication skills and translation techniques I learned as an English major have been tremendously useful to me in my career as a software engineer. In my experience hiring developers, I've found that those with liberal arts degrees do very well, particularly when they leverage their humanities background as an asset.
Anyone can write code, but it takes a breadth of knowledge and perspective to effectively maintain and engineer software that has societal value.
What would it have been like if you had not studied CS, and graduated with just an English degree? Well, we have a fairly good idea: just look at pure English degree holders and how they are faring in today's economy. Most of them are underemployed and overworked as they work multiple jobs in the service sector to make ends meet.
You, on the other hand, were able to use what you learned in your English program to boost your effectiveness in software engineering. But make no mistake: software engineering is the real, solid foundation of your career. Not English. English was useful, but only in combination with your technical knowledge.
The problem is that the skills from an English degree itself aren't in high demand by employers.
You've conflated the terms "meaningful" and "useful". These are not equivalent terms. Meaning is a story we tell ourselves to make sense of our lives. Use is an observable action.
If I help make a product that gets 16% more people to click on ads for something they didn't need in the first place, I will have been _useful_ to the advertiser (and my own pocket). But to say that gives my life _meaning_ merely displays a twenty-first-century version of the lazy and ignorant naivete that the Humanities have tried to fight against all along.
I am not against having a better paying job, nor am I saying folks can't find meaning in software development (or any field, for that matter). And I'm not implying that an English degree should make you a bunch of money. It's just that this whole "learn to do some JavaScript and CSS, change the world!" technohype is just plain bullshit.
Do you need to pay $100k to learn the skills to see through such bullshit? No. But the sort of things that the Humanities teach are exactly the prophylactic that one needs to guard against such existential wheel-spinning.
I'm pretty close to the guy you're talking about (though I'm 5 years down the line from quitting my English PhD program, and have already figured out how work freelance without starving).
I'm not sure I agree that more users === "work that matters", though I can agree it is much more difficult to find reasonable work the relies on a BA in Philosophy than to find reasonably good paying work that relies on being able to slap together some PHP script.
But I generally agree with you: the issue that the people I work with are all dealing with is figuring out how to not work 50 hours a week and still make a living, and being a tradesman programmer is a very easy way to do that (I'm finding it comparable to being an electrician or plumber without having to actually leave the house and own a truck full of tools).
This fall I had tried to get some interest among the people out here in Fredericksburg for a class, but I couldn't get enough people to sign on so I put my plans on hold. Teaching folks to do this kind of work is a good thing, so I wish you great success on codeup.
Many are stuck in what they consider dead-end careers like retail or customer service. They feel like cogs in a machine.
Computers and the internet are important. We do need lots of people who can make them do new things. These skills are possible to learn, with talent, motivation and investment of time.
The late 90s was fueled by the correct realization of these things. It just misjudged the value of early versions of everything. The Microsofts of the internet launched 10, 15 years after the web started to blow up. The mistake was thinking that all the land would be grabbed by 2002.
Today's tech growth is more real, like the industrial revolution. It's productive, even if it produces stupid pictures sometimes.
Whereas the certifications you described enabled a person to write reports, recommend products of a particular vendor, and maintain software/hardware configurations -- a job which is still being automated and taken over by developers without certification, particularly in smaller companies (devops).
Only time will tell though.
Employers are vocal about needing good employees. They are willing to spend on their recruiting. Some are apparently happy with the results of these bootcamps (for entry level coders, I imagine).
The schools’ revenue models differ substantially. App Academy, in San Francisco and New York, charges no tuition, but takes 18 percent of graduates’ first-year salaries
Why don't big employers hire & train, evening if they outsource the actual teaching to bootcamps? That way they will be able to dictate the toolset and the standards can be whatever they want. The costs are similar to recruiting costs anyway. Shorter average tenures don't sound like the whole story behind the lack of employer funded training. How can they be willing to spend $15k on recruiting but not on training. It doesn't make sense.
Big Banks once had very successful intense training courses lasting 2-6 months frothier traders. These contributed to their culture, built loyalty, actively assisted in recruiting, and culled the bottom of each cycle. The training programs were an asset.
If these schools can get someone to a solid starting point in 3 months, that sounds like a perfect fit for employer training. It takes a lot of risk off the table for students. Why not?
Is there some inherent advantage these schools have that facebook don't?
I just couldn't endure the attempts to turn programming into the new accounting. So, this summer, I switched from a developer to a security admin.
I can't imagine that adding thousands of new, minimally skilled programmers to the labor pool is going to do anything but make the situation worse.
Don't get me wrong, I think that programming being more accessible to anyone who is interested is a good thing. I am just concerned that we're going to have a bunch of people who want to get into it because they think it's the next hot thing. Like "Web Development" was 16-20 years ago.
c.f. http://blog.cleancoder.com/uncle-bob/2014/06/20/MyLawn.html
I don't know that STEM people are going to code schools; I think they probably just google the manual, read a few tutorials and have at it.
mgridley is right in that the vast majority of business applications require almost no math, and those that do are usually so specialized that an advisor figures out those equations first as they require a specialized domain knowledge.
Want to build tools that developers build upon? You may need the math, but you can usually already find the algorithms in research papers.
The only exception to this rule (that I can think of) are very specialized niches of development, which ultimately become commoditized and consumed by developers without the math anyways.
edit: ...along with spending months doing homework on algorithms and big/little-* notation, and learning automata theory, of course. I don't mean to oversimplify.
That's how pervasive it's becoming. If there's any sort of contraction in the industry, the situation will be bad.
My concern is that, as far as I can tell, almost all bootcamp-trained coders are going to VC-funded startups, many of which are fairly early stage. Those jobs could all disappear overnight, so to speak, if a bunch of VCs decided they wanted to invest their money in something other than technology.
Is that mainly how trade schools work, though? I've heard similar pictures of automotive and commercial pilot schools.
Also I remember when I only had 3 years experience programming and that was in 1984 and I was... not quite as wise as I am now. Optimistically I'll still be alive in 2044 and looking back at code I wrote in 2014 and asking myself WTF I was thinking, what noob wrote that and signed my name on it, way back in '14. A labor market of 40 or 50 years duration where 3 year olds are being marketed as being senior citizens is another strong indication of "peak of bubble".
I'll make a lot of money cleaning up after the kids, so I am grateful, but there should be more to life than spending all my time wearing a mental hazmat suit and wielding a virtual manure shovel.
My hiring bias skews towards people with a good engineering background or concrete examples of meaningful contributions to non-trivial coding projects.
Sure, vocational school is fine while demand for programmers is outstripping supply. But those who lived thru 1999 and the resulting downturn have seen that these things can turn on a dime and a 6-month certificate may not provide much job security.
For a long time I could not wrap my mind around why people did not put in the effort to learn new skills on their own. Eventually I realized that the reason is simple: they can't. Like you say, they either don't have the self-teaching skills or the motivation to follow through on the endeavor. I would be talking to friends and they would say, "I want to learn X so I'm thinking of taking classes at the local college." I would think to myself, "that's so silly, they should just buy a bunch of books for one tenth the price!" Because that's what I would have done. As time went on though I realized most people need someone to teach them stuff. They either never developed self-teaching skills, or let those skills erode throughout high school and college due to neglect. Maybe that's a commentary on our education system: it's too focused on spoon-feeding facts (and then test on those facts) and does not put enough emphasis on self-reliance.
Given a development role, how do you get someone who needs hand holding to be worth their salary? Just hire a lot of manager/mentors and resign yourself to being a large team? Or something else?
Does anyone here hire graduates from these schools? If so, what has been your experience? If not, why not?
Interestingly enough, if you look at job postings you'll also see that a disproportionate number of job listings want 3-5 yrs experience. Companies want people who someone else has trained for 3 years but don't want to pay the prices that people with 5 or 10 years experience command.
Disclaimer: I run a bootcamp in San Antonio called Codeup.
Why not have more schools training these professions?
Salaries at top law firms remain very strong, but salaries at most other firms are much lower than what one would expect due to the vast number of graduates.