Internships for Talented High School Students?
xeon4life asks: "I'm an Austin, Texas area high school senior with a slight dilemma: I need a job, I don't want what's offered at my age, and internships are not quite open for kids like me. I've recently been reading essays by Paul Graham about creating your own startup and have been motivated enough to convince two of my good friends to go into business with me later, during college. Thus, an internship at this point would be the ideal solution for me now, but nobody is willing to take me as an intern because I'm still in high school. What am I to do?"
"People have suggested that I just do what every other good American high school citizen does and take a mediocre job. The problem is, I feel it would be a waste of my talents right now to be stuck folding shirts at the local mall or flipping cheeseburgers when I could be helping develop a cutting-edge game, the next-generation compiler, or even the Linux kernel as an intern. I have a higher than most college students' understanding of concepts, and some real programming experience in languages like assembly and C/C++, but that isn't going to amount to anything if I can never find an interviewer who will at least listen to me. I'd appreciate any input the Slashdot readership can give me."
I am an owner of a small software shop and would live to provide internships to capable students, since currently we have more projects than we can deal with, but I hate the hassle of doing all the paperwork required by state, and also don't like the concept of minimum wage enforced by the state. Would much rather pay by the project.
But you might want to check Rentacoder.com and similar places where you can make some money for doing programming assignments that you choose. You won't become rich there, the Indians and Canadians are probably going to outbeat you pricewise, but stuff like requirement specs, communicating with the customers and figuring out the "real-world" software needs would be helpful.
Customers are the most discerning employers. Remember, in the end, it's the customer that pays you. Your boss is simply redistributing that revenue amongst its employees (minus expenses and reinvestment).
But again, your customer just cares about the product. They don't care if it was made by a team of Nobel prize winners, a bunch of high school kids, or a golden retriever.
Business isn't rocket science. If you're of legal age in which you could form an LLC, do it. Maybe take a mediocre side job to cover your expenses, but aside from that, do as the man says and strike it out on your own. You're in high school, so there's no risk. You're not mortgaging your future, have financial liabilites, dependents to support. Plus you have an entire summer to do what you want.
So do what you want and get started.
If you're as technically competent as you're making yourself out to be, I bet you get requests to "make the Internet work" and whatnot all the time.
My advice? Charge those people for tech support. Even if you charge half of what the cheapest shop in town charges, you'll be making mad bank, and have uber-happy customers.
At least, that's what I did before I got my internship.
Which I didn't get until my junior year of college after four years of applying, even though I was qualified for all of those four years. The truth of the matter is that it's just damned hard to get an internship as a high school student.
In summary: Charge for tech support, make mad bank, and hold off on the internship until you're an undergrad.
OMG! Wau!
Seriously, just go work at McDonalds or whatever. Many talented geeks suffer later in life because they don't build their interpersonal skills. Spend the summer doing something you aren't automatically good at - for me, that's anything involving actual physical work - with people you wouldn't otherwise interact with.
I promise you you'll gain enormously from this experience; first of all you'll come to respect the dignity of the average working joe, and secondly you'll get better at forming good relationships with the non-geeks of the world. This is a useful talent. They outnumber us.
If you're as smart and as driven as you sound, that won't wear off over the summer. I promise you the human skills you'll get from working a McJob for a while are a real benefit. And that won't hurt you when you come to apply for those internships in a few year's time.
When I was in high school I somehow avoided real jobs and got into early multimedia-type projects (mostly Hypercard... not sure how anyone made money doing that, but hey). I was actually more interested in programming and other hackery, but couldn't get a job doing that.
Eventually I got to work in video editing as people starting bringing computers into that realm, where I had the fantastic job of post-processing TV shows frame-by-frame to see if it was possible. The most computer-intensive work I did was writing scripts to rename large directories of files so they'd import into the video printer properly. Ugh.
Point being: you'll never get to do what you really want to do, but what you don't necessarily want to could be far more exciting than you realize. Get paid $10/hour doing low-level grunt work, just so long as you're NEAR a computer, you'll get bloody invaluable experience in real-world work.
I never did learn to be a real programmer, but I learned that I much prefer doing a mix of entertainment and coding anyway. Don't close any doors at this stage.
The world's only surviving livewriter.
almost all of the community colleges in my area (maricopa county, az) allow high school students (at least seniors) to sign up and take classes. i was taking classes through one as a high school junior. see if you can do that. boom, now you're in college
... imo, his 'success' has gone to his head and he now lives in a fantasy world. before i started working with computers, i painted houses and washed cars. both of those jobs taught me valuable life and career lessons a computer-related internship never would. plus, jobs like that are fun. you're still young ... have some fun before it's too late
as for joel's "advice"
vodka, straight up, thank you!
If you are really that talented you should have no problem doing this. This has several advantages over a real internship. For instance, most interns don't hack any kernels or optimize any compilers. With this though you've got some leeway and choice.
Why not fork?
This is spot on. This is a great time for you to do low hourly rate tech stuff like fixing neighborhood computers, etc. This will teach you a lot of the mechanics behind consulting, drumming up business, etc. without needing to worry about feeding mouths as you will later.
You'll hone your core engineering skills enough as you continue to tinker, be it in college or via personal projects. But you won't really learn a lot of the instinctive business stuff there, like making customers happy, working out fair bargains, building a reputation and knowing how to sell yourself as a reliable ethical hardworking producer. These are traits that will come in very handy if you want to start a more serious business later.
Some schools have a co-op program where you take classes one semester and work the next.
But, if you believe higher education really isn't in your best interest: I would say to get a day job as the others say (not too much, unless you have the kind of parents who will make you support yourself...), and to develop in some of your free time. If you are as skilled as you say you are, surely there is something that you can work on, some underdeveloped FOSS project somewhere that you can be of use on, or if you dare, start your own.
Now, here's the important part: document what you do. Again, if you say you can handle it, you should keep a list of features you implement, keep your patches, generally be able to demonstrate to an employer that you have a substantial understanding of what needs to be done to design and carry out a project.
(Disclaimer: I am taking the completely opposite road for myself. It is possible I am speaking out of my ass.)
I disagree. I went to a high school [www.metcenter.org] that helped place me into a tech internship. You have to 'pound the pavement' and find a company that will take you on for free or cheap. Once you get past the front door you'll look quite appealing to a middle-manager and HR.
I had two internships in high school, one was working for a local tech outfit in the repair depot, which let me network and get the A+ and Apple certifications, and the other was assisting a local grade school get connected to the internet, which let me learn how to integrate technology into education and get a grasp on networking and server technology.
If it weren't fr those internships I'd probably be flipping burgers today, but instead I work at a top-notch boarding academy and run a freelance 'managed computing' business.
The company that ran the school I went to is active in Austin, it's called the Big Picture Company [www.bigpicture.org], they offer services to set up metcenter-like schools nationwide. find this company and ask someone for advice, they're VERY friendly.
"Sometimes, I think Trent just needs a cup of hot chocolate and a blankie." -Tori Amos on Nine Inch Nails
Working in itself is a skill.
There's a lot to be said for getting any kind of job. Office politics exist even where there are no physical buildings, and you need to learn to navigate these waters. Also, you'll have to learn what employers like and dislike in an employee, which might (at times) run against your pesonal subset of common sense. Such differing points of view of basically similar people have been the fuel for billiant workplace commentary like the comic strip Dilbert.
Funny thing is that it doesn't matter how much (or little) you earn, the politics is there just the same. The sooner you expose yourself, the sooner you can make the mistakes you will learn from. Better to do it now while you can excuse yourself by way of youth, than do it later and be perceived as a ~25 year old that never grew up and throws temper tantrums or is naive about the workplace.
I'm not keen on self help books (I plan to write a book entitled "How To Stop Buying Self Help Books" one day...) but I am a big fan of the school of hard knocks.
The first and best thing you can do is rely on your "normal job" income to survive. If it's a bar-money type job, you just won't have the ambition. The next step is to realize that you're not better than everyone else. Too many geeks have that impression of themselves and it's the single most damaging quality to take with you to the world. Third, you have to pay attention to people and realize that they dissect situations differently than we do. Our nature is to take a highly analytical approach to every situation and consider emotional reasoning to be flawed and ineffective. This, however, is how most people approach situations and it's imperative that you atleast understand this and possibly learn to use and develop your own emotions. You also have to understand how people perceive you; completely different from an online personna. Online, people can only judge you by your thoughts, ideas, words, and sentence structure. In real life people judge you by your posture, body language, grooming, clothing, speech patterns, skin colour, weight, height and after all these characteristics are processed - your choice of words used to express your thoughts and ideas.
Communication styles developed by geeks tends to be very curt; largely by the nature of our discourse. IRC quips and one-liners, short and to-the-point commentary and input into discussions are fine online but in real life can be viewed as arrogant and callous. Conversations amongst peers has to be given due consideration. You can't use a pile-on dialogue style. Let others have their turn to speak and most importantly listen to and consider what people have to say. Dismissing with a word, a gesture, a sigh, grunt, or eye-roll is very hostile and won't win any friends.
People in general are competitive but not in every aspect. If somebody talks about their PlayStation; don't interject that you have a PS2 and an XBox. It doesn't matter that your TV is bigger, you run better Monster cabling, your sound system pumps out more peak watts, etc. Your computer(s) will probably be better than theirs. Nobody cares. When someone talks about their long, hard week at work - don't contest it - empathize. "Oh yeah? I worked 96 hours last week in a hot server room!" won't win you any respect, especially to a group that possibly performed 96 hours of manual labour in the hot sun, pouring rain, or freezing cold (or any combination thereof). Everybody has to work long gruelling hours now and again. It's a neccesity of life, not a one-up.
As for socializing in general; you do have to "get out there" and be with many people. A hilight of the geek life is the tendency to be introverted. Most that I know would rather go home and chat online than spend time in a combined setting. Going out for coffee, beer + wings, to carnivals, parties or other events that are full of people is good. Movies and other individual group activities; not so good. (Why bother "going out" if you're going to sit still and quiet for 2+ hours?) If your co-workers invite you out, don't neccesarily jump at it unless it's something that might interest you, but open your horizons. Paint ball, mini golf, go karts, dirt bikes, pool, sports, etc. can be fun and interesting (like video games, but you don't use your thumbs so much).
Above all; try to listen more than you talk, but provide some input. Nobody likes a creepy quiet guy who's always there. ;)
BD Phone Home!
Shameless plug. Like you weren't expecting it.