What the internship taught me

My first experience with web development was working as a freelancer. I mostly used Wordpress to build blogs and small websites. At that time I considered myself an experienced frontend developer with a considerable portfolio.

I was also a student at the Technical University of Cluj Napoca at the time and following the courses of a computer science college gave me another reason to think that I was good at writing code.

In our third year we were required by the faculty to attend a summer internship at a local software company to get a better sense of how it is to work in my chosen field.
I started to ask my colleagues and friends left and right in search for a good company where I could have my practice period. That's how I got to Around25.

I applied with a CV, had a nice interview with the guys and a few days later I was happy to hear I was accepted in their summer internship.

The internship took 2 months, but in that short period of time I accumulated a lot of experience and learned many useful things.
I'll try to go over a small list of what I learned in that period.

Bubble burst!

In college I had the opportunity to learn a lot of programming languages. I wrote code in Java, C, C++, PHP, Lisp, Prolog, ASM, Javascript, HTML, CSS, etc.
Like many beginners I thought that knowing the basic syntax and a few control statements or packages was enough to consider myself proficient in that language.
That all changed after the internship. I realized that my previous experience was simply not enough if I wanted to be a truly good coder.

Finally learned PHP

Before the internship I had a basic understanding of MVC, having used CodeIgniter previously for a project at school, but I didn't really understood the multiple tutorials I followed before. I was following them almost completely mechanically and was used to writing the code in a certain way to get the job done, but I didn't understood why it worked the way it did.

At the internship we started with PHP from the basics and worked our way up gradually. Even now I remember how enthusiastic I got when I understood how a routing system works in PHP, because we were doing it from the ground up. Something in me clicked. All the notions I heard of before, like Session, MVC, Restful API, etc. started to make sense.

The real Javascript

Javascript does not mean jQuery!
I used to think that writing Javascript code meant first importing the jQuery library and then using it everywhere.
Seriously wrong on that one!

We started with the basics of Javascript and moved towards writing a completely functional application in AngularJs.
That was the point when I realized that being a frontend developer means more than HTML, CSS and jQuery and that I still have a lot more things to learn.

Writing quality code

I used to work alone on freelancing or faculty projects. I used to write code to prove I could do it: fast, as much code as possible and consequently of very poor quality.
Since then I realized that a good developer is differentiated from a mediocre one by his level of attention to details.

I never used to think about writing clean code, that is easily to follow by someone else until I received a lot of feedback and suggestions from our mentors. Their help was invaluable in making me a better coder.

The internship was just the beginning. I am now glad to be part of the Around25 team and continue to improve and learn new things.