How do you get work experience in a language you just learned like C#? That is a question I get a lot. It really seems like a “chicken and egg”-type of problem. In order to get C# work experience, you need to be employed but in order to be employed, you need work experience. Fortunately, there are a lot of great options available to you. Let’s look at the top three.
Create a Product
If you have a great idea, create an application and sell it. The great thing about software is that you have very low overhead. Just build the website, app or service and sell it. At the end of the day, it isn’t a huge deal how many people buy it. Sure, you want to make some money off of your idea but the bigger deal here is that you have something in the marketplace. When an employer asks for your experience, you can do better than just telling them about what you can do. You can show them.
Contribute to Open Source
There are thousands of open source projects on the web. Either create your own (if you found a need that needs to be filled) or contribute to an existing project. This might seem intimidating at first, but there are a lot of resources out there to help you get started. If you want to get your feet wet, start by documenting a newer or smaller project. This will get you experience looking over someone else’s code and it will help out the author. Do even these small contributions multiple times and you will build up quite a reputation. Then you will have a large body of work to show a potential interviewer.
Donate Your Time
This is a great way to get an enthusiastic reference. Find a local charity and volunteer to build something for them. Find their pain points and solve them. They might not know what they need at first. If that is the case, you might need to volunteer to help them out in any way they need. Get to know the organization. See what they do on a repetitive basis. Do they schedule volunteers by hand? Do they inventory contributions on a spreadsheet? Is their website not serving their needs? Is there something that can be automated in their daily process? Whatever the need is, big or small, volunteer to solve the problem. In fact, you might find it easiest to build the application and then show them how it makes their lives easier. Sometimes it is easier to show someone software than it is to explain what it could potentially do. At the end of all this, you will have work experience and you will have a reference to put on your resume.
Want to command a higher salary on your very first job? Do more than one of the above options. In fact, do as many as you can of each type. Each suggestion above provides you with a slightly different useful bit in your job hunt. Selling software shows you can create an entire application that is viable in the market, contributing to open source gives you code to show off and shows you can read someone else’s code, and volunteering will give you a reference for your resume. If you do each of these or do one or more of them more than once, you will make your resume even better.
What About Education / Certification
This post has been all about experience but you may be wondering about certifications or education levels. As a person who has been involved in the hiring of software developers for years, I can tell you that education level and certifications don’t make a big impact on a person’s ability to do the job. For years, I worked as a consultant and senior developer without a degree or certification to my name. I’ve been hired to lead people when they had more education than I did. The difference was experience. The more experience you can gain, the better off you will be.
Now, before you decide to skip out on education entirely, note that I went back and got my degree. In order to get in the door of some companies, you will need a degree and/or certifications.