Perhaps this is one of the posts where I share the things I want. A few alternative titles might be:
What kind of Companies do I like to work for?
Things I’m looking for in a Company
What makes a company awesome?
I want to work for a company that:
- Offers a salary that matches my level of competency
- Gives a lot of opportunity to grow
- Has some nice and awesome people
- Gives rasonable deadlines
Offers a salary that matches my level of competency
As a professional its really important to get paid rightfully with the work that we do. We do our jobs well and often times we also work beyond the time when we are required to work. But the exception is that when were just starting out (probably around 1-3 years in the industry) the priority is to get experience. It doesn’t matter if the salary is low because later on you’ll get to demand your salary once you’re awesome enough.
Gives a lot of opportunity to grow
This is the most important one in the list if you’re just starting out. What I specifically look for in a company is that they’re willing to give me work that involves technologies, tools and methodologies that I do not already know how to use. This is great because what can you gain from doing things that you already know over and over and over again? Nothing right? But you will probably become an expert at doing it. And you gain the ability to do it blindfolded while your other hand is handcuffed.
Ok going back to the original topic: a company that gives a lot of opportunity to grow. This is what fresh graduates and people that are fresh in the industry should be looking for. Because schools only teaches a small fraction of what you would be really working with when you graduate. Its important that you gain the knowledge and experience needed for most of the work that you will be doing in the industry.
Nice and awesome people
There will always be douchebags, and people that you can’t really work with because of their attitude so its always nice to have some nice people around which are always accomodating, friendly and always ready to answer your questions. Always offers a piece of advice and always has a suggestion whenever you get yourself in a hole.
Deadlines are great because it prevents you from working on a project forever. It prevents you from fooling around while working. And it keeps you focused on the project.
But some deadlines, especially those that are given by project managers who have no experience in development are just terrible.
Reasonable deadlines are really important so the developer won’t end up crapifying the code just to catch up to a deadline made for zombie superhumans. Just like the saying goes:
Everything that is forced ends up like crap
Its important that the project manager or anyone who’s giving out the deadlines has a prior experience in development. Because only then can they make an intelligent decision on what the deadline should be. Even better is letting the developer estimate how much the specific story or module will take.
That’s it for this blog post. At the end of the day you will always have to choose the company where you’re happy to work with and that you’re enjoying the work that you do for that company. Otherwise you wouldn’t last or even if you stay on that company longer, the work that you do will always be badly affected.