I think the key to this really is "Design your intern projects in advance".
I interned last summer at Siemens Energy, working on internal software. Well, sort of working on internal software. My manager didn't have a project ready for me on my first day, then it took him a few weeks to pull something together. When he did, I was done within two weeks.
I was useful, effective, and efficient on the project I was given. Yet because my project was not designed in advance, I was stuck sitting around in the office for much of the summer and felt like a waste of Siemens' money.
Defiantly, this was the comment I was going to make, when I interned recently I got thrown onto bit part stuff and learning for quiet a period of time before the project I was meant to do was organized.
Not only does this get less out of the intern it also lowers motivation and makes you feel like your project isn't important at all.
The photo showing everyone at work looks like it would difficult to concentrate and rife with distraction. Why do companies feel the need to treat their developers like this? I understand that they wanted to get their projects done quickly, but it seems like that would be a tough place to work.
Hopefully the interns were paid well (this is relative) and learned a lot.
When I first saw the photograph of the interns' office, I thought that the article was a joke. I really don't understand how anybody could program productively under those conditions.
Crowded offices can be good for climbing a learning curve. The biggest problem most of the interns would face would be setting up their systems, getting the build to work, and figuring out how to integrate stuff into the system.
Lots of communication is good for that.
If they needed to do any deep thinking, I hoped they would have been allowed to work from home for a day.
Crowded offices can be good for climbing a learning curve.
Exactly my experience for my first internship, though it was far from that crowded. We picked up C# and a large framework (and some, a second language) well enough to be productive in a week and a half. (my top-level comment has more details)
Same here. Though I guess it can't be all that much less productive than the 20 devs in a room with the ping pong table + fooseball table + Playstation & bigscreen + DJ Turntables & PA (seriously!) environment that was so good at burning through $50M in six months back in the good old days.
Last year, I was approached by two Dutch trainees (20 and 22 yo) who wanted to do their trainee placement abroad. I agreed without having done more than trade a handful of emails with them.
They came to Australia and worked for me for five months. They brought their own laptops so I only had to provide a couple of desks, second monitor for each and a chair. I paid them in accordance with a typical traineeship for them back home (about AUD150/week, which would be around USD135/week). Their rent (at the place of a friend of mine) was AUD100/week and they supplemented their living costs with savings and help from their parents.
They were pretty raw as web designers and HTML/CSS guys but got a lot of opportunities to learn new skills and fill gaps with simpler work. Generally, they had paid for themselves each week by the end of each Monday. They loved the experience (we do drink beer and play a lot of table tennis here at the office!) and it worked really well for me also.
I am a general web studio first and foremost but was able to use them on various side projects as well - cutting PSDs to HTML, doing logo and page concepts, general maintenance, etc.
Their supervisor is looking to send more over later this year - they have intakes (outtakes?) in February and September. Will definitely be doing it again.
Worth echoing caryme's comment about designing intern projects in advance. With a sudden boost in manpower to a small business (I'm a sole director with two employees normally) you can quickly burn through work and have time to kill. In those times, it's good to have a few side projects you've been meaning to start. As a sole founder, try not to leave yourself as the chokepoint if you can avoid it.
Happy to answer any questions about it if people are interested.
My first internship had 6 of us sitting around a table, churning out code, just after my freshman year. Best thing I've done for my programming, easily. The supervisor did a good job bringing us all up to speed, and we ended up picking up C# and their framework in about a week and a half (they had a huge codebase already), and some of us learned Progress in the same time period (old english-like query & character-UI language).
The important parts for us to being up and running quickly, and being productive? Nearly full-time access to one of their main developers for the first two weeks, they knew precisely what was needed (lots of similar code, but not similar enough to DRY up), and we were in the same room. For at least half the summer, we were throwing questions back and forth every couple minutes when we couldn't remember something, and the vast majority of the time one of us would remember. Immediate question & response was absolutely invaluable, and I think was the single most important tool to speed-learning what we needed to know. As time went on our tasks diverged and we knew more, so we didn't need questions answered as often, but it was massively useful at the beginning.
Of course, it didn't hurt that they paid quite well. Motivation is always useful.
when you say 'student', you mean low-paid, right? Last I looked, it was illegal to have unpaid interns working on anything your company might actually use to generate income.
No. We looked at what students can make at jobs on campus, and then we pegged our wage to the high end of that. CS students have plenty of options, and if you don't pay your interns well ... you won't have any interns.
You are probably aware of this already, but there's a huge pool of CS students you're cutting out by pegging yourself only above, say, Starbucks wages.
Most of the major companies (MS, GOOG, etc) pay in excess of $30/hr (some as high as $40/hr) for interns. This is way, way beyond the high end of campus jobs.
But that pay rate is typically for a 4 or 8 month internship.
These guys were taking advantage of the fact that MIT in particular gives the month of January to students to work on their own stuff. MS, GOOG, etc wouldn't go through the HR headache and give high pay to an intern if he/she was only going to be around for a month.
However, those internships are so highly battled over, the majority of those students won't get one, and don't even expect to. The miniscule percentage that does? They're out of the pool anyway. The remainder? Still interested in anything that pays.
And keep in mind that if you offer that much for a CS intern, you'll have serious competition on your hands. Yes, you'll likely get excellent students, but you'll need to hire a small army of people to weed them out effectively if you want "the best".
I'm not quite sure what you mean - my impression from engineering and CS during college is as such:
- most of this pool of students you do not want to tap into. They're the ones who will do more harm than good, assuming they were even interested in doing any work. My impression from my time in college was that the majority of my colleagues were utterly incompetent and had no real desire to become competent. There's no hope for these people, and IMHO they make up the bulk of the "there are no jobs out there!" crowd upon graduation. These are the guys who do the bare minimum on assignments and have never written a line of code that wasn't required by a class, and get indignant when their framed piece of paper doesn't automatically deliver big paychecks on a silver platter.
- the rest are worthwhile talent, but competition amongst employers for many of them is fierce. I have a friend right now who has extremely high-paying offers from just about every big software shop out there, as a soon-to-graduate undergrad. In recent years I've seen MS (and some other companies) poach interns from other tech companies at the interview stage. Pay levels are quite high, approaching full-time levels in some places.
As a cost-conscious startup, you have to work hard to find the people that the Big Boys have overlooked. Recruitment processes is an extremely imprecise science, and from experience I've seen a lot of qualified people unfairly rejected because of dumb things like not having the right keywords in a resume to pass the inbound filter, or edged out because they froze up on a single interview question. There are quite a few of these guys out there, but the problem is that because many do not know how to market themselves, it's hard to distinguish them from the incompetent, worthless demographic.
They've probably read Joel's article explaining how the average school leaver is likely to be much more talented than the average unemployed programmer.
Or rather, you will only have interns from wealthy families who can afford to work for free. Better to pay them and expand the applicant pool; it doesn't cost much.
This seems to be one rule where the employee is more protected in the US than the EU. Unpaid internships are common here. Common to the extent that some graduates end up working for free for years before finally being promoted to a paid position. It's so prolific that the current generation of 20-somethings is frequently called "Generation Praktikum" (the internship generation) in Austria & Germany.
I don't know where you are exactly, but I am in Vienna and I haven't really encountered those unpaid internships much at all, at least not among the computer science & mathematics crowd.
I and a lot of people I know are/were working (not as interns) alongside school and many internships at the university are payed.
The pay might not be as high as what you'd get after you graduate but it's definitively better than most working class jobs that do not require any formal education.
> I don't know where you are exactly, but I am in Vienna and I haven't really encountered those unpaid internships much at all, at least not among the computer science & mathematics crowd.
The grandfather-post's observation applies more to liberal arts students (Geistes- und Sozialwissenschaften). With a math degree in Germany I never had a problem getting a paid internship during my studies. Some of my friends in the liberal arts, however, have to do unpaid interships even after finishing their studies.
Of course the media perception is dominated by liberal arts guys, because they are the ones who complain loudly and in a matter sympathetic to journalists. (While the more technical minded people are too busy making money and enjoying themselves.) Hence the "Generation Praktikum".
As far as I can tell, it applies to graphic designers [1], architects, animators, etc. as well. As a programmer I've got more people throwing money at me than I have time for, so it definitely depends on what it is you do. I also think the indefinite internships are partly self-inflicted - once you make it known that your time is available for free, employers are probably more likely to exploit that. A lot of students in Austria seem to have almost comically socialist views, maybe the concept that they're selling their time on the free market is foreign to them.
[1] my sister is in that boat right now - she can find paid unskilled work or unpaid design work; she's in Berlin, though
It's not that they are more protected; market economy simply works that way: MS/Apple/Google/Facebook/etc are competing for employers, the best way to get good ones is from good interns.
It is quite common in Thailand at least to have internships that are unpaid. The way the company sees it is that they are spending resources and time making this person more valuable than they would be without the experience. I think that's the mentality over there.
I think Mark Cuban wrote a blog post complaining about how he wanted to hire a bunch of people for cheap, but if they added value to the Mavericks then he would have to pay them minimum wage.
I figured that if you were getting paid nothing while working on something profitable for a company, it was assumed you were being compensated with experience. But apparently, all the company can do is train you while deriving zero benefit from your training. This seems like a stupid law.
Turning the perspective around, minimum-wage laws can be seen as having the purpose of preventing low skilled people from learning on the job. One of the best ways to learn is take a job is the field you want to learn in. You get paid to learn. This is better than having to pay to learn. Unfortunately minimum-wage laws make this option available only to people who already have enough skills that they can produce at least minimum-wage value while learning. So an MBA-level person can take a manager's job in a restaurant for low pay to learn restaurant-managing skills, but a high-schooler may not be able to take a cook's job to learn basic job skills like showing up on time, being diligent, following directions, etc. because the high-schooler may not be producing enough net value to justify even minimum wage.
But the idea behind minimum wage (as I understand it) is to ensure a living wage to people who are supporting themselves with the job. If you aren't getting paid anything, then you clearly aren't supporting yourself with the job; you're investing in yourself, just like going to school. That's why I assumed it would be legal to pay people zero but illegal to pay people less than minimum wage.
I interned last summer at Siemens Energy, working on internal software. Well, sort of working on internal software. My manager didn't have a project ready for me on my first day, then it took him a few weeks to pull something together. When he did, I was done within two weeks.
I was useful, effective, and efficient on the project I was given. Yet because my project was not designed in advance, I was stuck sitting around in the office for much of the summer and felt like a waste of Siemens' money.