Let my story talk for me:
1989 : My father brought home a Commodore Amiga 500 computer => Countless hours of gaming!
1997 : My first summer after school graduation I heard the first rumors about something called “Internet”.
Internet came quite late in Greece.
1997 : My first contact with internet as a student.
2003 : Got my diploma in Electrical & Computer Engineering.
Fortunately, and under the encouragement of my professor in “Computer Networks”, I decided to build the simulator I needed for my research in Delphi 3.
2006 : Got my MSc in Electrical & Computer Engineering and my first job in I.T, as a system administrator.
From time to time I had to build some sites for my employer using a CMS or dig into the code of open source forums to fix bugs or make some custom extensions. Gradually, I started leaning more to software development than system administration.
2009 : My first contact with MVC frameworks.
It was the Yii framework. It was the first version of Yii and the code was not very welcoming for newcomers like me but the MVC concept was very intriguing.
2010 : My first real job as a web developer.
Becoming familiar with the 3-tier architecture of a web application and taking a deeper dive in the Java world.
2011 : Met CodeIgniter and loved it!
At last! A framework that you could easily understand its internal workings.
2013 : My first steps in real-life software development processes through the ICONIX methodology.
I also switched from CodeIgniter to Laravel framework (Rapid Application Development in action). Loved it!
2015 : Met PHPUnit. Loved it!
Within the next 2 years I wrote a couple of thousands lines of testing code for my applications.
2016 : Met with Jenkins. Loved it!
Jenkins brought a better understanding of a production environment and real-life deployment methods as well as a first contact with code metrics.
2017 : My first contact with Microservices architecture, Scrum and Docker.
Alongside Scrum came a greater need for clean code and professional behavior.