To AcidRazor - perhaps you don't have the right type of personality for a long term career in IT. Or perhaps you are working for a k@k company. Or perhaps a combination of both. Loving coding and software development is not sufficient enough on its own. Perhaps your company is trying to get rid of you, but you don't know it yet?
After the written warning I quit myself and moved back to Cape Town. They wanted to offer me more money. ****ers went belly-up 2 years later just as I predicted (but hey, who listens to the ****ing primary guy who started as the first employee anyway right?)
Anyway, I can't do decent graphics design or cut up from an image to html to save my ****ing life. You work with people who specialize in the field. Can I change html and designs when there's little to no graphical changes? sure. Can I code in over 8 languages and possibly even more? Duhr. Am I actually GOOD at it? **** yea. Can I setup a server and make it hum for you? In my sleep. Can I make a helluva cup of tea? Yup.
There are cheapskates who would love a one-man show, but then the reason why they're probably looking for a one-man show is to replace a former one-man show who probably got fed up working 24/7 and still getting shat out for being behind schedule.
But hiring 5 monkeys when 1 expert can do the job in a quicker time (with less bugs, if at all, with more efficient code)
requires a specialization in a field. I chose programming with my secondary being database design/servers because they go well together.
If I were required to do graphics AND cut-ups AND programming I'd never even know half the **** I do today when it comes to programming/servers etc.
As a company you're lucky if the graphics designer you have can also cutup stuff into html/css. That is why there's different categories (which recruitment agents love mixing up because they don't know what they're talking about)
Graphics Designer - The dude who does the layout of the website, most probably trained for websites as you get guys who are trained for advertising/magazine layouts too (so even those words can be split up into 2 further proficiency/expertise)
Web Designer - The dude who takes **** from the Graphics Designer and cuts it up into workable/efficient HTML/CSS code. Usually a good graphics designer would take on web design as a secondary skill and work on that to become an expert in, complimenting his chosen field in IT.
Web Programmer - The dude who does the interaction between database and front-end. Makes with the JavaScript and dynamic nature of websites. Not necessarily required to be a database developer as well, but it's damn well required if you want to have any sort of oversight when projects get bigger.
Database Developer - He makes the relationships between tables and stored procedures sing. Normally a good Web Programmer will also adopt this as a skill, but not required. This guy will usually also know how to make things run quite fast and would be responsible for queries on data etc. Servers and tweaking database settings, knowing indexes/keys etc is required for this IMO.
Then you get the Project Manager, dude responsible to oversee/chat to clients/communicate needs and get his team in line and goal orientated/motivated to complete a job *without* having to work insane hours or overpromising a client with no idea of how much actual time something will take to complete (Project Managers in general are *******s unless they come from a programming background)
I'm not even going to mention Business Analysts as they're a waste of space and oxygen (for some reason usually women as BA's with no ****ing logic, they do make good test subjects for possible bugs in code programmers might overlook, but in my experience the only requests they have is aesthetic "move this button here")
Anyway, there you have it. a
HEALTHY and efficient IT team (I didn't even mention the poor technician, trust me, he is in the dungeon somewhere) that could ROCK the world and clock in insane amounts of work for 1/5th of the price.
As soon as you hire inexperienced mother****ers who can barely speak English thinking "now I can get more clients and/or free up some time" you are sorely mistaken. Your primary team will be so busy "teaching" the new guys and fixing their **** up's, that they won't get to their own work and would then need to work overtime, which is never approved because it's unforeseen and your "own fault" for not managing your time better.
Anyway, enough ranting.