Last week, I published a post stating why you shouldn’t take my advice. And maybe not Chris Aniszczyk’s advice, for that matter. But I thought I should tell you, the reader, what he said, what I do, and what I think of his tips, and let you decide what to do with it.
When I was in college, Chris Aniszczyk, a software engineer at Twitter, gave a lecture about the company and the technologies they use to process over 500 million tweets each day. More importantly, he mentioned seven tips to grow your career:
- Find newbie-friendly open-source projects and contribute to them
- Find a mentor early at work and outside of it
- Don’t specialize early in your career
- Not networking? You’re not working!
- Control your public image, you are a brand
- Interview every year, practice makes perfect
- Learn negotiation skills and get multiple offers
I agree with almost everything Chris said, and I’d like to add some words of my own.
1. Work on any kind of personal project
Wouldn’t you be impressed if you met the engineer that wrote the open source library that powers your favorite application? Contributing to projects, especially open source projects, is a great way to highlight your skills!
I would go even further and say that you don’t have to contribute to someone else’s project if you don’t want to. When I do just-for-fun programming, I usually tinker with smaller ideas on my own. On the other hand, these small personal projects don’t have much impact.
2. Find a mentor early at work and outside of it
Mentors are wonderful! Though in recent months, I haven’t focused on this very much. Perhaps it’s time for me to call up an old colleague?
3. Don’t specialize early in your career
Technology changes fast. Generalists and specialists have different advantages, but I’d rather be a generalist. I consider myself a generalist in the field of software engineering.
4. Not networking? You’re not working!
Go to meetups, like Campfire at TechRanch. Don’t be shy to ask for business cards or email addresses! You might find someone who can help you take advantage of a massively positive rare event. And as much as I hate to admit it, parties are great for meeting new people.
5. Control your public image, you are a brand
Brand yourself for the career your want, not the career you have. It’s better to have your online presence show that you’re a top-tier programmer, not a nobody!
First, make sure your public profiles are clean. Check if you’ve posted questionable content on your personal Facebook, Twitter, Instagram, no matter what your privacy settings are.
Second, update your professional profiles, like LinkedIn and GitHub, (and consider listing them on your resume). I’ve gotten plenty of cold calls based solely off of my LinkedIn profile.
6. If you dislike your job, do something about it.
The original tip was “Interview every year, practice makes perfect.” However, when I have a job I enjoy, I don’t feel the need to interview for a new one. Here’s what I think:
On one hand, a new offer increases your optionality (and you could use the other offer as leverage for a raise). On the other hand, you have to expend time and energy to hunt for a new position (and a job hunt might make your boss think you’re getting ready to leave your current company).
So I won’t personally recommend annual interviews if you still like your job. What I will recommend is “If you dislike your job, do something about it.” (Of course, this may be easier said than done.) Nevertheless, you won’t reach the top of the mountain unless you get off the couch. And if you land your dream job, stay humble and keep working hard. There are millions who would love to take your place.
7. Learn negotiation skills, get multiple offers
When you’re searching for an internship or job, multiple offers from different companies can increase your starting salary. Soft skills, like negotiation, are more important than we realize. However, HR won’t give you a better offer unless you ask. Fifteen minutes could
save you fifteen percent or more on car insurance earn you an extra $10,000 per year.