Stories · 14 min read

So You Want to Be a Pro­gram­mer?

Is programming for you, and is it worth trying, how late is too late, which language should you pick, and how do you land that first job? I decided to become a programmer at 33, after years in another profession, and here I have gathered everything I wish someone had told me back then.

Translated from the Bulgarian original →

Wondering whether it's worth giving programming a try? I'll do my best to answer. This Digital Story is not like the others. If you already have experience in the field, or if it simply doesn't interest you, don't waste your time on the lines that follow. They are for people who wonder whether this so very promising (and cool!) profession might be worth a shot.

The IT sector is booming, especially against the backdrop of our economy as a whole. It stands out not only for the incomes it provides, but also for its working conditions, the enormous demand, the environment it creates. For the chance to work on projects of global significance. Yes, it sometimes struggles to “talk” to the rest of society. And still, it is a magnetic place for a future career.

I decided to become a programmer at 33, when I already had serious experience in another profession. There are so many things I would have loved for someone to tell me at the moment I made the decision to switch. Those are exactly the things I'll try to gather here.

Is it worth trying this profession? Is programming for you? What knowledge and skills do you need to get started? When is it too late? What are the key decisions you have to make at the beginning? How do you choose a programming language? Where should you learn it? How do you find your first job? What other professions in this field could you aim for?

I'll give you my personal, honest answers. And I'll be endlessly happy if they prove useful to even a single reader who then dares to take the big step…

I make no claim to absolute truth. Everything I'm about to share is my experience so far, and through it I'll try to give my answers. Many of them surely depend on the point of view of whoever you happen to ask.

Programming
Photo: Markus Spiske

Is programming for me?

To be frank, the most important reason I wrote this piece is the answer to exactly this question. And it's the only one I'm completely and unconditionally sure about:

There's no way to know unless you try.

I'm telling you this as someone who has spent his whole life in journalism and has been driven by humanities-minded passions. Someone who, until a fairly advanced age, kept well away from mathematics—and mathematics kept well away from him. I first touched program code at 33, and at 34 I started my first job as a programmer, after 14 years in a completely different field.

And speaking of math… Yes, really, counterintuitive as it sounds, you can work successfully in this field without knowing more of it than a fifth-grader. Of course, there are specific projects where it matters, areas of programming where there's no way around it. But it is far from mandatory, or even necessary, for the vast majority of positions.

Unlike two other things, which are not fields of knowledge but qualities. The first is the desire to keep learning new things, over and over, which is essential in a world as dynamic as that of information technology.

And besides that—logical thinking, the ability to get to the heart of problems, break them into smaller ones and solve them.

And here's the paradox: it turns out that it's not math but languages that are indispensable. Because everything in this field happens in English, and you need to have a good command of it to start. Of course, nobody expects you to have read all of Shakespeare in the original, or to know the terminology of the field; it's enough to be able to communicate and read with comprehension at a basic level.

I know quite a few architects and lawyers who have switched to this profession, even a tennis instructor and a musician. People who saw computer code for the first time when they were over 50. I've heard of a former airline pilot, doctors, former police officers.

How do you find out whether it's for you? The only way is to try. There are plenty of introductory, basic courses online whose whole point is to show you what programming is. That's how my own adventure began—with the one-month basic course at SoftUni, a large Bulgarian private programming school—and you can find similar initiatives in many places.

Programming
Photo: Gordon Johnson, Pixabay

How do I start?

So you've decided to give software engineering a try? Congratulations. I haven't been practicing it for all that long (my experience is about 4 years), but I genuinely love it.

Truly, to avoid disappointment, we definitely recommend setting aside some time for a few beginner courses to check whether this is for you. It's also important to end up with someone who will light a fire in you, as with any other new knowledge. So if things don't take off, consider whether the problem might be the teacher, the course, the teaching style or something else.

But once you're convinced it's interesting, there are many paths. They depend mostly on how much time you can spare and how you learn best. Many software professionals who have walked my path will tell you that a university degree in this field isn't necessary, that everything you need can be learned through courses. And that is true, but only partly. If you want to feel at ease and progress faster through unfamiliar material, if you want a broader foundation to build on, a degree in this direction is certainly a treasure (especially from a good enough university).

Only… alas, not everyone can afford 4 years of study. From here on, academies are a wonderful solution.

Programming
Photo: Max Duzij, Unsplash

How long will it take me?

My path began at SoftUni, which offers 4 main tracks for programmers, depending on the technology they'll work with (we'll get to the differences between them). Either way, the tracks take a year and a half on average, after which you can say you have a profession and enough knowledge to get started.

At Telerik Academy, another well-known Bulgarian school, for example, the tracks are much more intensive, some lasting only 6 months. You'll learn a lot in less time; they're a wonderful solution, but only if you can afford to devote your time solely and entirely to studying. Which, at least in my experience, isn't required at SoftUni, since I got through the online courses while working as a journalist at the same time, with a newborn baby in my arms.

There are more and more other academies offering a head start, too. It's certainly worth researching them well, asking friends and getting a feel for which one is yours. Or simply improvising.

If the lack of a diploma worries you, quite a few academies are now licensed as vocational training centers, so their certificates carry a fully formal, official weight as well.

There are probably people who are completely self-taught and prepared only with online courses, but I, at least, have yet to meet such a programmer. Yes, online videos are an extremely valuable way to get into a particular technology quickly, but for the very beginning and the fundamentals they don't strike me as a good idea.

Academy courses, if done right, give you the knowledge you need to find your first job. Of course, that's not the end of learning. I, for one, felt quite uneasy finding myself in a new field with so little basic knowledge, and over the following years I “put myself through” more than 30 additional courses at the same software school, including in areas where the knowledge was completely useless to me.

Be ready to keep learning even after you've found your first job. At that point, video lessons on the big platforms can turn out to be a useful and sufficient resource. With all the caveats, depending on which direction you plan to take.

Programming
Photo: Lukas

What do I need to know beforehand?

Oh, this will be a pretty short answer. Only that you shouldn't give up easily. Every form of training I've mentioned is designed to take in someone starting truly from zero.

Which programming language should I choose?

Many people spend quite a lot of time choosing the specific technology they'll learn. There's sense in that, but it isn't all that important either, since the basic knowledge from the first courses overlaps to a very large extent, especially among the most widespread options.

Either way, choosing a programming language is a must—you have to start with something. A classic choice, especially if you want to learn faster, is certainly one of the 5 most widespread languages on the Bulgarian market today: JavaScript, C#, Java, Python and PHP. Whichever you choose, you won't go wrong; it's no accident that they are the most widely represented in the programs academies offer. Any of them is a proven good idea, because the path is well-trodden, the schools have serious experience with them and the demand is long-term. They all come from a common family—the languages based on C—so they are quite similar in logic and even in appearance.

We're lucky to work in an era of programming languages so readable that we practically “speak” English to the computer, compared with the solutions of decades ago, which were truly unkind to programmers.

Of course, it's no mistake to settle on a less common option, such as the tried-and-true C and C++, or newer ones like Go or Swift. It's quite likely to pay off, but they certainly demand a bit more effort and specialized courses.

Either way, it's good to make sure the language you choose is in sufficient demand. A good approach, in my view, is to look at the job board on dev.bg.

If you're still undecided, you can always find an online resource comparing the main pros and cons of the languages. It also matters whether you've already set your sights on the specific area you dream of working in. If, for instance, you want to build web pages—the complex applications that websites are today—the logical choice is JavaScript. That points you toward the profession of a front-end specialist. If you're drawn more to the world of artificial intelligence, then Python is the obvious choice.

It's also wonderful if you can somehow steer toward an area where you have a personal interest or previous experience, even if it has nothing to do with software itself—things work out best when work meets pleasure.

I, for example, chose front-end technologies for two reasons. On the one hand, it was the shortest learning track, and I couldn't afford anything else. On the other, I like that in front-end development you create something you can see. Something that, logically, is quite similar to what gets created on paper.

Programming
Photo: Roman Synkevych , Unsplash

How should I learn?

Let me say again that my experience comes from SoftUni; at universities things are generally classic, whether it's software engineering or any other discipline.

After COVID, some academies brought back in-person options, while others remain entirely online. For me personally, online learning had many advantages, because I could watch the video lessons at a convenient time in the evening, speed up the parts that were clear to me and replay the ones I didn't understand.

For many people, though, the value lies in personal contact, the chance to interrupt the lecturer at any moment to ask about something unclear, to seek help. There's no right answer here either, but it's worth thinking about which option suits you.

Programming is an extremely applied field, yet it requires quite a bit of basic knowledge before you start. Still, don't let that mislead you into thinking that learning will consist of listening to lectures and cramming. Nothing of the sort! At every moment, every new piece of knowledge should pass through practice. Trying and repeating what you're shown, solving the exercises. Sometimes a competitive element with others in your course gives extra motivation.

It's your knowledge and skills that matter, and those are exactly what the people hiring you for your first job will assess. Certificates are by no means the most important thing, but exams are a nice opportunity to motivate yourself and prepare. And you never know when a successfully passed exam might come in handy.

Programming
Photo: Markus Spiske

Will I find a job easily?

As long as you're doing well—absolutely! The demand is huge and keeps growing; the sector needs programmers. Yes, people with more experience are certainly better paid and more courted, but there are only so many of them—first, because the market is growing. And second, because of the nature of the profession: in the natural course of development, after a few years of programming people often move on to next steps, becoming managers or architects, for example.

So companies, especially the more far-sighted ones, are always open to interns or junior specialists, popularly known as juniors.

Almost all software academies make a practice of steering their most successful students toward specific companies. Quite a few companies also run some kind of school of their own.

Either way, two things matter when it comes to landing your first job: self-confidence and… something to back that self-confidence up.

It's good to have at least some study projects to show, and to polish your CV so it looks good, even though it lists no experience in this particular field.

When you go to an interview for your first job, nobody expects you to have the knowledge and skills of an experienced specialist. But it's important to be prepared and to have something to show. Job boards regularly post entry-level positions too. Many people don't even wait for the end of their training before starting a real job, and there's nothing wrong with that.

And once you find a good first position, once you land in the right place… from there on it's easy. The work will draw you in, and the demand for experienced people means that a capable specialist really can choose among good offers.

Programming
Photo: Sora Shimazaki

Programming, or…?

The IT sector in Bulgaria is still developing and expanding at an incredible pace; we can all see it. And programming is far from the only career option.

If, for instance, you don't have enough time for longer preparation—you need to find a job faster—or if computer code itself hasn't seemed all that tempting, a sensible option is a career among the specialists who test software products. QA stands for Quality Assurance and covers some quite interesting directions—everything to do with guaranteeing that a software product works as expected.

One side of it is so-called manual testing, where the QA specialist takes on the role of a user and hunts for bugs in how the application works. That is a suitable entry-level role, one you'll be ready for after much shorter courses. And afterward you can always move further, for example toward automated testing, which does require programming.

Of course, alongside all this there are many professions that have nothing to do with code. If your strength is organizing people or mediating, you can aim for roles like product manager or Scrum master—they don't necessarily require programming knowledge.

Programming
Photo: Vipul Jha, Unsplash

Hello, world!

So, I hope I haven't been preachy, but rather useful with ideas. Many of the answers I've given, as you can see for yourselves, are subjective; you'll hear quite different ones from people with more, or different, experience in the industry.

My goal is something else—besides giving you a modest initial bearing, to convince you that if programming captivates you as an occupation, it's worth carrying on. Because you'll give yourself a new and fascinating world that can only extend the road you've traveled so far. For me, for instance, programming was also the road back to journalism, with this site. Where I write about technology, but now firsthand and with the experience of someone from the “humanities world”…

Every programming course begins with the famous sentence “Hello, world!” I'm keeping my fingers crossed that a new world opens up for you too in software engineering. And if it does, I'll be glad if you write to me afterward to share your success, so we can tell your Digital Story together!

Until then, if I can be of help with further answers, I'm entirely at your service. Write to me at [email protected]


I'll soon tell the story of how I turned to programming at the online event Career show.

I'll be glad to talk on November 30 (Wednesday) from 9 a.m.

The information technology sector has been more than attractive for career development in recent years. But can anyone become a programmer? Is it ever too late to turn to this profession? What qualities and skills do you need to succeed? When can knowledge from the IT world prove useful in any other field?

The event is free, but requires prior registration.

More information here.

Almost there…
If you liked the story, support the project. The site has no ads.
Support

Next story

All stories →