I recently decided to find myself a permanent job as a web developer and being a freelancer my entire career as a programmer I didn’t have experience with what it will be like when searching for a job and going to interviews. As of today, I’ve already been to quite a few interviews and there are some things you should know before you also do that.
First thing to do before looking for a job as a web developer (or whatever kind of software developer) is
picking up a programming language to study and gaining some experience creating applications. So decide which language you want to study (pick up the one most used for the kind of software you want to develop) and spend some time at home getting familiar with it. You should know that
nobody wants to hire someone who has no idea how software works.
Next make sure to be familiar and possibly have some experience with some key concepts of software development:
- to start with: have an in-deep understanding of
Object Oriented Programming; what is a class, what is an object and what are the advantages of OOP; be sure to know what
interfaces, abstraction classes, static methods and variables are and be able to explain what
encapsulation and polymorphism are.
- with Object Oriented Programming come
Design Patterns – they are solutions to some common software development problems and are very useful, but are not very easy to understand in practice in the beginning, so search the Internet for practical examples for a particular Design Pattern;
Singleton and
Factory Method are examples for Design Patterns,
see here more;
- A very useful software solution is MVC architecture. MVC stands for
Model-View-Controller and the principle behind this architecture is separation of your application’s
interface, business logic and database. It is mandatory for a software developer in the commercial world.
- Use a
Framework; a framework is a software platform on top of the programming language that offers some resources you can use for fast development and makes you comply with MVC architecture. A real time-saver. Here are some frameworks for php:
●Zend Framework – good corporate support; needs more time to learn it;
●Code Igniter – fast to learn;
●Yii Framework – they say it’s a new generation framework;
●Symfony
●CakePHP
- If you’re going to be a web developer, you should be able to code the interface of your application. This would include knowledge of
HTML5 and CSS3. In the past few years it has become common practice to use
JavaScript and Ajax for the interface to avoid the need to reload the page to get some kind of response, action or information from the server. Also, make your life easier; try using
jQuery, which is a framework for JavaScript and Ajax that really saves you time with all the plug-ins available on the Internet for whatever you want, the good documentation and the greatly reduced volume of code you have to write to gain some results.
When it comes to applying for a job, make sure you have a
well-structured CV with a nice formal photo (not from last week Saturday night). Check the internet for templates for CVs for software developers. After your CV is ready, you can proceed to apply for a job on the Internet. What you should know is that
the market is very dynamic – if you live in a big city in Europe or even in a capital city, you will find dozens of new job offers on the Internet every day. If you have never worked for an employer as a software developer, there’s a chance that you would be recognized as a junior programmer, regardless of your experience as a freelancer.
When sending your CV to potential employers, don’t rush to send it for all the offers that were on a website for the past month – apply only for a few offers at the beginning to get a feel of what it is like going to interviews. Another advice I can give you is not to appoint more than 2 or 3 interviews for a day, otherwise you would have to rush from one place to another and that would make you a little nervous.
An interview for a position of software developer could be between 30 minutes and 2 hours in most cases.
Make the difference between
recruitment agencies and companies looking to hire. Recruitment agencies take care of the communication between you and the potential employer before you are approved for an interview.
Be ready for tests: You’ll do a lot! Search the Internet to find common questions you could be asked when going to an interview for the programming language you study. What you also should know is that
employers don’t care about your time: They will invite you on an interview and give you a two hour test to do only to tell you at the end that you do not comply with the requirements based on your CV they had before calling you.
Have a prepared answer for the question
“What kind of a remuneration package do you expect”? You will be asked this everywhere. The number you have to say should be something in the order of the average a developer of your status gets.
This is all the advice I can give you that is based on the experience I have. I really hope it will be helpful to you and wish you good luck with your search for a job.