DISCLAIMER: I am NOT a spokesperson for my employer. I am almost never allowed to comment on issues related to my employer, and not generally allowed to speak to the press. I have a good job that supports my wife and son; please don't get me fired.
I recently tweeted that my employer is looking for iCloud developers. To be a successful candidate, you would be ONE of the following:
- Experienced Mac software engineer
- Experienced Windows software engineer
- Senior Unix Systems Engineer
For any of these positions, they'd be looking for someone who has shipped quality products of this kind in the past. I am not part of the hiring team for iCloud.
I also tweeted that my employer is looking for Build Engineers. To be a successful candidate, you should be able to do ALL of the following:
- Explain your thorough knowledge of Subversion and/or Git,
- Show your skills at writing powerful yet clear perl and shell scripts, and
- Be experienced with using the above to build software (mac, windows, or server-side) automatically. (IE. An "automated build system")
I would be part of the hiring team for the Build Engineer jobs.
If you are interested and think you are qualified, contact me. Bonus points if you can find my LinkedIn page and contact me that way.
SERIOUS ADVICE FOR YOUNGER PEOPLE
A bunch of people have said, "I'm only 15, so I'm not qualified for these jobs." Let me give you the best advice I know.
If you are passionate about iOS or Macintosh Software (or, heck, Android or Windows for that matter), the very best thing you can do is to go get one of those "Learn to Program Apps in 24 hours" books, get the developer tools, and WRITE SOFTWARE AS SOON AS YOU POSSIBLY CAN. Do it today! Definitely do not wait for college.
The younger you start developing the mental muscles necessary to write code, the easier it is. This is true of almost everything -- learning foreign languages, math, reading, maybe even sports.
But It only takes a few weeks to become good enough to write your own programs without a lot of help. Obviously, the sooner you start, the sooner you can be good at it.
Now I am going to tell you a sad truth that isn't actually so sad: Every single person that tries to write programs, at first, they stink. In this way, programming is just like sports or video games. At first, you stink. Your friends might even laugh. But you have to remember, they also used to stink, and they got better, and therefore you can, too.
If we're talking sports, the way you get better is that you practice. Hopefully, you can practice in private. Go shoot 100 lay-ups every day, and you'll soon be pretty good. Go to a batting cage for an hour every day, and pretty soon, you'll be pretty good. Same thing with programming.
Even more so: when my son was born, I took a few months off from programming. Then I went back to programming, and my first few attempts, to be frank, were horrible. This happens every single time I start over again after taking time off. But I know that it only takes me a short time to get past the most embarrassing mistakes, then I start making "better" mistakes. Eventually, I am making mistakes that my friends don't even notice, and I'm asking the experts for advice.
So the good news is: Everyone else who ever learned how to program, at first, they stunk, also. It's not just you. You have to push through, and in a month, tops, you'll have a program that you actually aren't embarrassed to show to people. If you have any urge to write programs at all, and any skill, you can do it for a month.
THEN WHAT?
Then, I want to give you another piece of advice, which is true even if you aren't young. If you want a job writing software, the best thing you can do is to write software, and put it up for sale -- or even for free. Even better if you sell a program, get some users, talk with them, and improve your software. There are NO college classes that are as useful as this.
Then when you go to an interview, you can say, "I wrote THIS" and maybe even "I have THIS many happy users." If you can do that, you're probably going to get the job. But if you're like some friends of mine, you won't be looking for a job. You'll already have a really good one.
I can't wait to try your programs.