Furward Momentum (Introduction)
- Building Your Support Network and/or Team
- Mapping the Technology Landscape
- Learning the Fundamental Skills
- Choosing Your Path
- Starting and Growing an Open Source Project
- Building Your C.V.
- Getting Your First Tech Job
- Starting a Technology Company
- Career Growth and Paying It Forward
Once you’ve gathered a group of people to pursue this journey together and support each other along the way, it’s time to take a look at the technology landscape and decide where you would each like to end up.
Don’t worry much about what the path to get there looks like yet.
There are a lot of specialties in the technology industry–far more than any career advice columnist would ever cite.
To give you a concrete example: Lesley Carhart (@hacks4pancakes) once published a multi-part guide to starting an career in information security (a.k.a. the legal counterpart to computer hacking).
Just scroll through her guide (especially chapters 4 and 5, which is an in-depth guide to different job titles and roles). Then realize this is only for roles that involve protecting the company’s and their customers’ information while, in some regard, supporting day-to-day operations.
A Brief, Oversimplified Overview of Technology Careers
Patrick McKenzie once described the two main types of employment positions in a business as such: Cost Centers and Profit Centers. The conventional wisdom being: If you want your job to be secure even when the economy is dreary, you want to be attached to a profit centers, not cost centers.
The real world is messier than that.
A lot of businesses stake their reputation, at least in part, on the correctness, reliability, and/or security of their technology.
Sometimes companies even have a Sword of Damocles (a.k.a. government regulation) hanging over their heads. This means a lot of “cost center” jobs are indispensable and must always remain in-house. When it comes to business: It’s better to be necessary than loved or hated.
Tech Support Roles
The first technology job that comes to mind for a lot of people is the most traditional “I.T. worker” office job: Helpdesk.
Technology support roles don’t get the support they deserve.
It’s true that engineering, operations, and security-oriented roles command higher salaries and command specialized skills that fewer potential employees possess, but tech support work is very easy to attach to profit centers: When something goes wrong, their first exposure is through their tech support employees.
Support role experience can also make you a world-class security expert, since you’re being exposed to the real problems your users and/or customers face.
The main skills you need for a support role are:
- The ability to communicate with other humans effectively.
- The ability to troubleshoot ambiguous problems with limited information, even if that requires frantically using search engines until you find a convincing explanation for the problem.
- The willingness to escalate problems to ensure the person you’re talking to gets the help they need.
But wait, those are also the same skills you need for any of the roles on this page!
If support roles are the insulation between the technology teams and the rest of the organization, operations is the wiring that the support roles shield.
Operations roles include Site Reliability Engineers, Network Engineers, Data Center Operations, Database Administrators, and all manner of System Administrators.
The goal of an operations role is to keep the technology systems running, even in the wake of disasters. This is especially important for companies that provide critical infrastructure for the Internet and emergency first responders.
This usually means: Software developers. (It can also refer to hardware development.)
Although engineers can target different languages, frameworks, and platforms, their goal within an organization is usually the same: Create solutions to business problems.
Information Security Roles
Information Security roles are their own beast. Any of experience you gain in any of the other roles can lend towards success in information security.
I can’t dive into information security roles any better than Lesley Carhart did in her Guide to Starting an InfoSec Career.
Roles That Defy Categorization
The loosely defined roles I mentioned above have a lot of hybrids, overlap, and exceptions.
DevOps is the intersection of Engineering and Operations.
AppSec is the intersection of Engineering an Information Security.
Cryptography is the intersection of AppSec and Mathematics.
Technical Writers don’t neatly fit in anywhere else, but good technical documentation is one of the best time-savers for every other role.
Project Management is conceptually similar to Tech Support (in that it provides organizational insulation; n.b. between engineers/operations and business leadership), but is usually more prestigious and requires time in one of the fields the roles manages.
The Technology Landscape is Incredibly Diverse
It’s way more diverse than my above, over-simplified model.
There are specialized niches within each of the roles above that it’s very easy to become one of the foremost experts with an intersection of a set of given technologies.
If your goal is to gain employment quickly, you’ll want to look at the Careers page for every company you’re interested and take a list of the technologies used by those companies, and then select your starting point from what they have in common.
Conversely, if you’d like to start your own company, you want to instead focus on the problems faced by businesses in your area, and then work backwards from their needs into the exact technologies you need to master.
In either case, you’ll eventually arrive at your own mental model for the technology industry. I cannot think for you!
If you’re having trouble, ask your teammates.
Finding Your Niche
Once you have this mental model, think about (and measure) your strengths and weaknesses. For example:
- How many words can I type per minute?
- How long does it take me to find the answer to a weird technology problem with a friend’s computer?
- How effective am I at explaining complex topics to others, to where they actually understand a relevant portion of it?
- Which technologies am I already familiar with?
Now take those skills, and map them against at least ten of the job descriptions you find for each of the different specializations you might be interested in.
It won’t always be a one-for-one match, but you’ll find that some roles are generally a better fit for your strengths than others.
And if that turns out not to be the case, don’t worry: The next step will ensure you have the right strengths for the career you want.