We got an email from a Dice user: “I’d like to move from Linux systems administration to programming. What’s the best way to make a smooth transition?”
He’s in a good place. His knowledge of Linux servers, the Linux command line, distribution and tools will serve as a solid foundation for a career in programming and development. Plus, learning how to program the Linux kernel will boost his market value and help him capitalize on the growth of DevOps, notes Amanda McPherson, vice president of developer programs for the Linux Foundation.
Here are three steps our correspondent should take to maximize his experience as a Linux systems admin and enter the next phase of his career.
Step 1: Learn C
Since C is the base programming language for Linux, learning it is the first step in the journey. And because C has been around since the early 1970s, there are any number of ways to acquire the knowledge.
For instance, if you like interfacing directly with an instructor, a community college course might be your best bet. If you’d rather study in your spare time from the cozy confines of your home office, consider enrolling in a free online course. There are options available to fit almost any schedule, budget or learning style. Once you have a fundamental understating of C, you’re ready to take the next step.
Step 2: Learn the Linux Kernel
There are lots of ways to learn the Linux kernel. For instance, LinuxCommand offers courses for programmers as well as systems administrators. The Linux Foundation offers courses, as well. In addition, there are any number of books on the subject, and be sure to check out the resources in the Linux Zone of IBM’s developerWorks.
Of course, Linux is open source and you can learn a lot from reading the source code of different programs. Conferences and boot camps are yet another option.
“Consider sitting in on a few courses at a Linux conference,” suggests McPherson. “Your company may even pay your way if the conference provides education for systems admins as well as programmers.”
Step 3: Get Hands-On Experience
Once you’ve learned the Linux kernel, you’re ready to cut your teeth. Participating in an open source project is a great way to get hands-on experience, but be sure to select one where experienced developers will critique your code and help you improve.
Best of all, your code “lives” in the project, McPherson points out. That means when you’re ready to hit the market, technical managers can review your work and affirm your skills. Recruiters may even contact you, since they often search project sites to find candidates for programming positions.
If your boss is supportive, ask if you can participate in a project or apprentice under an experienced programmer at your company. As your skills improve, put yourself in contention when a DevOps position opens up.
Another option is to buy a Raspberry Pi. You can create an app or a program in Linux using this credit-card sized computer. Depending on the model and components you select, a Raspberry Pi will set you back between $50 and $100.
Because Linux has been around since 1991, there are any number of ways to hone your skills. Just bear in mind: The key to becoming a great programmer is practice, practice, practice.
- Technical Interview Questions for Linux DevOps
- How to Run a Linux Terminal on Your Android
- Demand for Linux Expertise Drives Hiring Priorities
Image: e X p o s e/Shutterstock.com