Computer Science Career | What you need to be a developer

In my experience, figuring out if a person could be suited to pursue a career as a software developer, I think is quite simple, and by the end of the article you will have figured it out for yourself.
If there’s a lot of demand for developers, there must be a reason… it’s not a simple job, and it requires a lot of commitment, which only passion can’t weigh.
And it’s not a job you can force yourself to do just because you’d like to have that (let’s say, pretty high) salary. Unfortunately (or fortunately) it doesn’t work that way.

If you disagree on even one point, I would perhaps think twice before investing so much time in this direction.
Unfortunately this topic is huge, so I’ll try to summarize by generalizing, but I think for those who are really interested, this will not be a problem.

First of all, I am of the opinion that the component of technical knowledge is currently the least important and requested (or sought after) part.

The main characteristic of a developer should be the ability to work with others, or “soft skill”.
Ability to express oneself correctly, with kindness, willingness to help and share information, honesty and integrity. Easier than saying. Quite a rare feature these days.
This is why women are highly sought after in recent years, they are much more capable and capable than many men. So if you’re a woman, don’t be discouraged, and – unfortunately – be prepared to have to go abroad to make your skills count.

Then I would put the passion for the topic, which makes it a pleasure to keep yourself up-to-date.
A developer who hasn’t updated for 4/5 years is what is defined as “a dinosaur”, i.e. he will only be able to work with old technologies, on outdated projects that are only maintained, or developments “for the customer” .
This involves a very “vertical” degree of competence, i.e. you are the master of a specific technology, but which may not be in demand on the market, or not exactly close to where you live.
A consequence of passion is that it won’t be a problem to find out about a topic outside working hours. If, on the other hand, your work must be exclusively during the contractual hours, I would say that you will have many difficulties. But I think this is the same for all professions (not “jobs”, but “profession”).

Another important side I would say is being proactive.
This means going beyond the “task” that is entrusted, but being active and asking yourself if you have all the necessary information, if you are tackling the problem in the right way.
Should a problem arise, be able to figure out the source of the problem, gather the necessary information, and plan a solution.
This is a trait that you don’t learn, but it’s part of the passion and interest one has in being a developer, which falls under the category of engineering, so solving problems, finding solutions.

Proving that you are a person you can trust is another very important aspect.
It takes months or even years to gain someone’s trust, but moments to lose it permanently.
This means that it is important to take responsibility, not to blame others, and to be honest.
I personally really appreciate it if a person tells me that he doesn’t understand something, if he asks me for help, if he needs something explained to him a second time.
This makes me understand that he is at least posing the problem of doing one thing well, which interests him, a first step towards trust.
In information technology it is expected that once a strategy, a job to be done, an implementation has been discussed, the developer autonomously creates a software component, which must adhere to the specifications.
One of the most common problems with junior developers is that they think that others tell them what and how to do things. And if something doesn’t go as planned, others are to blame. With such an attitude you get nowhere.

Having the ability to acquire new skills is also a very important thing. In computer science, skills are not acquired by reading books or watching videos on youtube. That’s just the beginning.
In order to be able to say that we know a technology, or a topic, we must first put it into practice, usually on “hobby” projects in one’s spare time. If you read a book about C#, or PHP, or Java, or HTML , or Figma, it doesn’t mean you know how to use that skill.
After working on your own project for a while, you will realize for yourself what this means.
And that’s why there are so many open-source libraries that are free, and they let universities do little projects.
And no, during business hours, no one will let you do it or pay you to do it.
This is why I appreciate practical courses, even if they only last a year or two, but certainly not for a month. Don’t be fooled by courses that promise you big gains in a short time.

At the end, and only at the end, technical skills are evaluated. Because those nowadays are very simple to acquire. And given the shortage of developers, we are willing to support the candidate in his growth path, but the previous points must be present.
And no, because if you know how to make a FOR or have seen many videos on Youtube it does not mean that you are a programmer. But maybe one day you could become one.
My advice? Make a small project on the technology that interests you. It doesn’t matter what it is, but start. If you are learning html and css, make a template for a “dummy” ecommerce site. If you want to learn React or Angular, build a small master-detail application (one to many, like a customer database where each customer can have many addresses).

“I” or “my son” wants to go to university and do computer science. Very good, there is a lot of demand. But know that if a guy reaches 18 and has never developed something, as long as he has had the economic and social resources, I think he lacks the fundamental passion. You could start programming as early as 10 years old. I personally started I think when I was about 8 years old (maybe a little earlier, maybe a little later). And many others too, more than you think. I believe at least 60% started programming before the age of 18.
If you like information technology, don’t go to scientific/classical high school/gymnasium, but rather focus on a training course with information technology at its core, for example an industrial technical institute with an information technology orientation. In this way you will have all the time and calm to build a good foundation that will come in handy in the future.
I personally went to night school (technical industrial institute in computer science, equivalent to a gymnasium – so pretty high level and very demanding) between the ages of 19 and 23 (in the meanwhile I was also working fulltime and living by myself), as I didn’t have the family financial resources when I was a boy. I studied flowcharts for a full year in third year, and a full year of SQL in fifth year. In college you will never have the time to do it.
In college they will teach you practically nothing that you will need later in the real world of work. You will learn the theory, things from ancient times, unless you find some good teacher who is passionate and has kept up to date (which is very rare in Italy, but I hope so). This is my experience with recent graduates in Italy. 95% had such a low level that I couldn’t understand how it was possible, then I met a couple of teachers, and I understood them…
Start programming on your own in high school. Start simple, and slowly add more and more. Read, watch videos, be curious, but practice. This is the secret of success.

Are you 30 or 40 and would like to try to enter the IT sector? Excellent, there is a lot of demand, it’s not late. But will you be willing to make the sacrifices it takes? This is the big deal. In addition to getting the basics, for example a diploma in computer science even in the evenings, you will have to invest a lot of your free time. If your priority is going out with friends, being with family, children, etc. I find it difficult, I’m sorry. This is because you have large gaps to fill, and therefore for about 6 months / 1 year you will have to focus on a technology that you know is in demand on the market (just do a search for job advertisements in your area). For example if you like the frontend, focus yourself on a project in React, Angular, Svelte, or Vue. Or if you are more interested in the Backend you can implement REST APIs in C#, PHP, Java, with Sql Server databases, etc. Or if you like both, a nice Frontend and Backend project, like a customer master-detail module in React/Angular/Svelte/Vue and backend in C#/PHP/Java etc.

The salary shouldn’t be the priority either. In the meantime, enter the sector, gain experience, steal the secrets, then you will see that in a short time (one year or two) the salary will no longer be a problem . If you think you deserve a high salary just because maybe you went to university, know you are making a big mistake. Fresh out of college, with no real experience, your value to a company is zero. You are a cost rather than a value. You will start to be productive after about a year. I therefore believe that it is an excellent exchange for both (company and employee) to find a good balance on salary. Do not misunderstand: I’m not saying to indulge toxic or fraudulent companies. But when they offer you a salary that would allow you to “survive”, I would accept it. Or rather: I accepted it. I didn’t make any money at first, but it was a really good investment (and I stress the word “investment“, which means putting things in perspective). After a few years you may find yourself earning far more than an unskilled worker earns.
And remember who believed and invested in you. Are you sure that changing jobs for just a few euros more is worth it? It is not certain that in the next workplace you will find an equally positive environment. And going back is not always possible.
Furthermore, you can also decide to go abroad. All over the world there is a huge need for software developers. But of software developers who are capable of doing something, not who have read many books.
Know that abroad the technological level, the working environment, the salary, the personal respect, the organization, the possibility of growth, are much better.
I would definitely recommend having an experience abroad. Unfortunately, Italy is stuck in the 2000s.

Working in smart-working, i.e. working from home, with flexible hours, without having to go to the office, is not easy and it is not for everyone. Especially if you’re just starting out, I strongly advise against it. At the beginning it is essential to have a colleague nearby who can answer your questions, who can help you. But if you’re remote, all of this takes place over a chat, or via video, and believe me it’s a whole other thing, especially on slightly more “difficult” projects or companies.

I hope I was helpful, if you have any questions just ask in the comments!
Good luck.

Add a Comment

Your email address will not be published. Required fields are marked *