Frustration driven software developer.

How I moved to Berlin to be a better Software Developer - The Plan

Recently talking with a friend of mine who made the same choice I realized how planned and technical was my migration for moving where I am at the moment.

I’ve lived all my life until the late 29 in a 3k souls village in north Italy responding to the name of Cunardo.

Here

If you are into stuff like climbing, hiking, and any kind of adventure in the nature, that’s a location I would totally recommend you.

Everything is awesome and smells natural, but a certain moment of my not so abroad oriented life I’ve just felt the desire to take my stuff and move somewhere else.

The best and more safe way for doing this was to find another job and considering my attitude to planning and seeking safety, I didn’t want to move without having a safe landing spot on the other side of the jump.

That meant finding another job in the new place before moving there which of course, in my village-boy mind, meant planning and prepararing the right mental state.

I think the way I’ve done everything could be interesting to someone, for sure to my friend from before, so here it is.

The Planning

Developers

My decision came in November 2015 and became stronger and stronger month after month.

The defined target was to find a job in time for being able to move at the earliest in July 2016 and at the latest in December.

Having a strong goal helped me to keep the focus on the thing and to not lose that strong desire to move.

I planned a first preparation phase in which I would not send any job application in order to prepare myself, improve my online presence, and acquiring more confidence for future technical interviews.

Update my CV

Obviously, the first and most important part to attract some possible recruiters is to present yourself with a rich and interesting CV.

Mine was just terrible.

The English grammar was at the elementary student level and the contents were barely more than the first working year experience.

After a good job of polishing, I’ve reached an interesting and rich 2 pages CV, after 7 years in the same company and 4 main projects shifting, my experience was interesting and wide enough to overfill it. I had to keep it short and so I decided to put less emphasis on the less interesting experiences based on what I wanted to do (2 years of C# were enough to understand that I don’t want to work in the Microsoft ecosystem).

About the format, you can find several websites explaining how to write your best CV so I will just skip this part.

My conclusion on this is that is not much important the shape or the colors, the content, and the emphasis on what is important are the real players in a CV.

Update my LinkedIn profile

I think LinkedIn is still one of the best platforms for finding a job in IT because it’s just the social network with the “professional aura”.

It’s simply full of swarms of IT recruiters, Tech Talent Acquisition Experts and Whatever Engineer looking for some potential interesting profile so, at least in IT, it’s quite easy to receive some offer and have an occasion to talk with someone and find a job.

Saying this, I’ve just felt mandatory to me to update my LinkedIn profile in the same way I’ve updated my CV with the different target of reaching a good visibility point.

Update my Github profile

I tended to keep the bigger part of my personal project, big and small ones, in private repositories because I just didn’t felt the need to make them available to the world.

But well, if you have to expose your skills to make you attractive as a software developer, this is not the best way to do it.

So I’ve changed the most interesting private repositories to the public and wrote minimal documentation for each one of them.

Create a StackOverflow profile

If Github is the best source for checking out how a developer works, StackOverflow is the best for checking how a developer communicates, personal blog excluded.

I think communication is one of the most important skills for a software developer and that’s why I opened my account and started checking out regularly questions and answers.

I can’t say to have contributed very much to the community (while I’m writing this my StackOverflow score is 119, not much but it’s something) but at least I’ve figured out a personal weakness regarding communication and this is still very valuable.

In addition to the profile on StackOverflow, I’ve created a developer story in StackOverflow Jobs, the same way as LinkedIn, another way to increase my visibility and the chances of finding an interesting job.

Create a personal website

Soon I found out how many developers have their own space to present themselves and to aggregate all their internet profiles.

Looking back today to traffic stats of my website this has been for sure the less useful thing of all but at least I’ve created a personal space on which putting my CV and all the referrals to my public profiles.

I thought would be cool to have a simple and easy to remember URL so I bought https://www.marcopolita.me for almost nothing.

Re-study the basics.

Algorithms’ complexity and search algorithms, SQL (which is the base for most of us but wasn’t for me), design patterns, SOLID, code smells.

All the kind of stuff that any dev tends to forget once he or she starts working on something economically interesting.

I’ve come back to them because are the basics of the common language for any dev and for this reason a good starting point to quickly evaluate dev’s skills.

I heard stories of interviews that went more or less like this:

“How do you measure the quality of your code?”

“With SOLID!”

“Can you explain to me the O in SOLID?”

“Object-Oriented!”

I needed to redevelop a study methodology and to create good habits to keep the pace of a regular study.

To me writing everything and resuming whatever content I was studying helped to develop good study habits.

So the advice here: go back to study regularly because you are trying to sell your skill and your mind and they both work the best when continuously stimulated.

Conclusions:

So far this is everything I did for the planning phase of my migration.

In the next post, I will tell you how I started my interview phase and how I developed a feedback circle to keep learning from every interview.

I’ll close this post with advice on the book that helped me during all the phases of my job search, Soft Skills: The software developer’s life manual, one of the best inspirational book I’ve read so far, useful not only for developers.