The Start of My Journey as a Software Developer

I remember that when I was studying, I used to have these constant thoughts of what it would be like to actually work in a company. I always had this fear of not being ready, not being able to overcome any challenge, of being a burden to my team, of being somehow incapable of tackling new problems or constantly improve myself.

The truth is that I had never been a very passionate student—I did what I had to do to pass the exams and nothing more. But, at some point, the classes would be over and eventually our university course would lead us to a corporate environment, at least in most cases.

At some point, I was told, “80 percent of the interviews will be evaluating you, not your skill set”. This didn’t make much sense to me at the time. “If I’m studying all this to be a developer, why wouldn’t my technical skills be thoroughly assessed?” This echoed in my head for a long time and I would hear this type of comment time and time again without understanding its true meaning. Eventually, I started to go to job interviews. I prepared myself by reviewing programming concepts of some languages I thought would be tested—such as Java—and anything of interest according to the position I was applying for. And that was it, that was what made sense for me to prepare for.

Before I got my first job, I went to several interviews. Sometimes, the interview process would take up to four stages. “Are my skills always being evaluated in these four stages of the interviews? Will all these stages have practical exercises? Which other skills will be tested?” I didn’t quite understand these recruitment processes, and that was just because I didn’t realize what was actually being evaluated. I started noticing that in interviews with several stages I would only be asked to do practical exercises in one or maybe two of them, maximum! “What about the other stages?” Initially, these seemed nothing but informal talks. “What do you like to do in your free time? Tell us a little bit about your life. Do you like to work with other people?” I didn’t realize I was still being tested on those parts; I just wasn’t being tested for my technical skills. My personality, my communication skills, my ability to talk about something, whatever it may be, the respect and professionalism I was employing while I was talking to the interviewer… all was being evaluated. I started realizing that my skillset was only a small component of what interviewers were looking for. But at this point, I didn’t totally understand why.

In the end, I did get a job as a Software Developer. I started in one of Growin’s Tech Academies. The main goal was to learn a new language I had never worked with before. I was presented with a new challenge from the start. I started working with a team of recent-graduates just like me with strong support from the company itself. We wouldn’t just do an online course and watch some how-to videos; we would work on internal projects, oriented by an experienced mentor. This learning experience offered us something unique, considering that we had zero professional experience back then. We had the chance to apply an agile methodology to internal projects while using sprints to organize and manage our own work. My colleagues and I would have to work together to finish our tasks and we would have to be coordinated in order to deliver on time. We would deal with people with different backgrounds and different languages. And the best part of it all was the lack of pressure. It was not like we were at the playground, but we wouldn’t have the constraints of a real-project experience. This gave us a real, healthy opportunity to grow, at the same time having a glimpse of what a corporate environment is about.

When I look back now and I think about what that experience has taught me, I realize that one thing that allowed me to evolve with this positive, beneficial experience was myself. I believe software developers often start with the idea that we are just guys pushing buttons, doing the tasks that we are told to do. But the reality is very different from this. Of course, if we want to explain what a software developer does, we can put it simply by saying that “he or she codes.” We code stuff. Whatever it is, in whatever language, we code stuff. But this kind of job requires a certain level of cooperation. Software developers often work in teams, some local, some remote but always in teams. So it’s very easy to go back in time, to when I was still studying and I had to manage projects for my classes. Typically, these projects were performed in teams. And I believe everyone has had the experience of working with someone who just wasn’t that dedicated to the cause, either by not being dedicated or responsible enough or just by not really caring for themselves or their teams.

This is where all those questions that didn’t make sense before come into play. I realized that the interviewer wasn’t that interested in my free time. It wouldn’t matter if I liked reading or playing online games. What really mattered to the recruiters was that I was doing something as a hobby. They couldn’t care less if I liked to go to the beach or if I liked to play sports with my friends. What mattered to them was that I enjoyed doing these kinds of collective activities. They didn’t care if I wanted a big house or a great car in the future. They wanted to know if I had goals and ambitions. I wouldn’t get mad if a recruiter corrected me on something during the interview—I learned I was being evaluated on how I dealt with criticism. All of this started to open my eyes to a whole new perspective of what working in a company really means.

After some time in the Scala Academy at Growin, it was time for the next step. After finishing the Academy classes and after being involved in an internal project, I was assigned to a Nearshore project. This was when our skills actually started to be employed in a real professional environment. That was also the first time that “the pressure component” started to have an effect on me. That… was the real deal.

The first big milestone: the interview with the client. It was just a regular interview, but back then my concept of an interview was already very different from when I started. I knew the client wanted to see my technical skillset, but I also knew they would be looking for someone they would like to work with. And a person can be the best developer but if they can’t genuinely interact with someone, can’t accept constructive feedback and learn from it, or shows low interest for the team goals, then that developer won’t be the best coworker.

This is something I have witnessed through these last couple of years. The ability to work together with one’s peers, the ability to work towards a common goal, and to contribute to a healthy environment are just some of the qualities that are paramount to consider when hiring someone. These are the qualities that we will see present anywhere we go, no matter the field of expertise, age, or particular talent. If you show these qualities, then you are surely worth every cent.

I am lucky to have had the opportunity to work with amazing people that supported me, gave me a real chance to learn from them, and gain experience on a wide range of skills and competencies.

So, if you made it this far and you are wondering what’s in this blog post for you, let me now share some advice. It’s not only normal to be scared at the beginning of your professional journey, it’s okay to feel that way too. Most of the time, the uncertainty of what awaits us is discouraging. But do remember, the professional you were when you started was very different from the professional you are today. And the professional you are today is very different from the professional you will be tomorrow. Most learn a lot in school but this is not sufficient to be successful and to evolve as a professional. One needs to work every day to improve oneself in all aspects, from technical to social. Software development is an ever-evolving field of expertise and, throughout the years, you will (hopefully) continue to learn a lot. The ability to work with new people from different backgrounds and work together for a common goal—while respecting your peers in the workplace—are things that you will have to keep improving throughout your entire career.

Sure, you can and will be scared at the beginning. But I promise that you won’t be at the end, as long as you have a clear goal and/or professional path, set your mind to it, and take the shot. As Wayne Gretzky once wisely said, “you miss 100% of the shots you don’t take.” Otherwise, you’ll never know what you could have achieved.

What about you? Have you ever felt like this? Share your experience with fellow developers in the comments section below or give me a heads up.

– – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – – –

The ultimate advice on remote work
How To Choose The Right IT Service Partner for Your Business