Sure the money can be good, but is it really right for you?
In recent years, computer programming has become one of the most popular professions among young people searching for a career, and it’s not hard to see why. Amidst an ongoing global startup boom, many have come to see coding mastery as a one-way ticket to economic security and a sweet job somewhere with a ping-pong table and a beer fridge.
But while becoming a developer has been one of the most satisfying experiences of my life, it certainly hasn’t been easy. Throughout my 20-year career, I’ve tackled complex problems on tight deadlines, and worked late into the night more times than I can count. Today, I am proud to head the development team at Innovid, the world’s leading video marketing platform for advertisers to engage consumers across all screens and channels. As SVP of engineering, I’m tasked with leading a team of some of the brightest coding minds in Israel, and none of us got where we are on talent alone. A successful career also requires hard work and intense dedication.
If you’re thinking about launching your own computer programming career, here are four tips for making it as a developer:
1. Before you start an engineering job, make sure you really love programming
You could be the smartest person in the world, but if you don’t actually like programming, you’re not going to be much of a developer. In order to succeed, you need to have a real, sincere passion for creating software and working with computers. Indeed, working in technology means working in an industry that’s always changing. If you don’t absolutely love learning about new programming languages, platforms and hardware devices, it’s going to be rather difficult to keep up with all the emerging tools you’ll need to understand to do your job.
Instead of jumping in head-first, take some time to read a programming book, try an online course or take a computer science class in school. Chances are that if you’re the kind of person who gravitates toward programming, you’ll know it fairly quickly.
2. Start learning the basics, then build from there
Engineering is such an expansive field that it can be difficult for a new practitioner to figure out where to start. With so many different kinds of computing devices and programming languages, how is one to decide which to study first?
I recommend beginning by learning to code in a simple, accessible programming language. Python is a good entry-level language to learn, but others like Java and C/C++ can also work. It’s also important that your programming knowledge is based in a broader understanding of how computers work. That’s why I think it’s a really good idea to learn about the inner workings of computers and key parts like the operating system kernel, the CPU, I/O, memory, and storage. If possible, studying computer science in school is a great way to learn these things in a supportive environment.
3. Build your own projects in your free time
Computer engineering isn’t just about understanding how things work. You also need the creativity to build your own programs from scratch. As such, most employers want to see that developers have taken the initiative to build their own projects before they decide to hire them.
Before you start applying to jobs, spend some time using programming to fix a problem in your own life. This will give you something to show the hiring manager in your job interviews, proving that you are passionate about the work and willing to keep pushing for a solution if you hit a snag in your coding.
4. Find an employer that will allow you to grow
While office perks like snack rooms and happy hours get a lot of attention, you’ll want to first make sure that any company you work for gives its engineers the support and the freedom they need to advance in their careers.
To that point, it’s important to find an employer that will allow you to take time to learn new technologies and produce high-quality work. While every company will sometimes need you to rush to fulfill short-term, pressing business needs, the right firm will balance these needs with your professional development. You should also make a point of seeking out an employer that uses modern software development methodologies like continuous deployment and Kanban. This will help you stay up to date with all the latest trends.
Last, but certainly not least, make sure your new employer will provide a sense of personal fulfillment. This means working at a firm that hires the best people possible, creates a fun work environment and empowers developers to push forward their own ideas and initiatives. After all, it doesn’t matter how much a company furthers your career if you’re not enjoying what you do.