Hello fellow Sitepointers,
I'm at a bit of a crossroads in my career and I need some advice on next steps. I'm a standards-based developer and I've been working as a front-end developer for the past 3 years at a company that calls itself an "agency". This is the first "agency" I've ever worked at so I'm just wondering if the following practices are typical of agencies.
Contacting employees when they are on vacation/family emergencies/etc. during non-work hours (such as 3 AM) b/c they have a problem/question about a project that has a deadline to meet that day.
Outsourcing to crappy, mediocre developers. The code was such crap that our in-house team had to clean up a fair amount of it to make it presentable for the client.
Long work hours on practically a regular basis (ie. around 50hrs or more/wk, sometimes MUCH more depending on the employee).
Seeing coworkers working from home even when they are sick as a dog.
Another issue I have with this place is their hiring standards. I was given the impression when I was hired that they were moving towards web standards and that's why they hired me. But almost every coder they've hired AFTER me barely knows current best practices, common CSS techniques (such as CSS sprites), etc. At this point I feel like they just tell me whatever the hell they think would appease me.
Sorry if this is all sounding like a rant, but I just want to know what others think and what I should do next (though I've probably already made up my mind at this point).
And just in case anyone else is starting to feel like they're in a similar situation and come across this thread, I thought I'd share a couple of blog entries that have really hit close to home for me and helped me make my decision.
And really all of Andy Rutledge's podcasts are worth a listen if you have any interest in web standards, design professionalism (and really ANY professionalism), and just plain giving a damn about your craft.
Thanks for the advice everyone! Yeah, I've pretty much decided this place is REALLY not a good fit for me. Their main priorities seem to be the bottom line and making tight deadlines. And they couldn't care less about what's "under the hood", only how the "paint job" looks in whatever browsers the client tells them to check. and yes @ccRicers, I also feel like I'm not developing as a coder. I'm just not learning the stuff I want to learn and we don't do anything particularly innovative, or hell, just plain for fun and to LEARN.
Oh, and just to be clear, points #1 and #4 from my original post didn't specifically happen to ME per se (I'm not THAT crazy to put up with that crap). But they happened to colleagues and that alone does not sit well with me. Job or no job, I'm out.
I worked for an agency that, while it didn't have all the kinds of problems you described, but it made me question my ability to grow as a developer in that company. For in-house work, my boss was more obsessed with high-level jobs such as sales and project manager than the lower level technical jobs.
I'd be lucky if we discussed how we'd go around architecting web applications. Most of our meetings consisted of meeting deadlines or prioritizing features to add in a project. Nobody there really wants to get into the metal of how things work, because there were only two people technically proficient enough to toss such ideas around.
There were no defined coding practices or standards they lived up to, the philosophy was just "get 'er done". I had no interest being a project manager so eventually I knew that wasn't the right place for me. And it sounds like the agency you work that is almost the same.
If they continue to harass you for technical assistance during your non-work hours, especially at odd hours in the night, contact the local labor department and describe your situation. I actually had never done this so I don't know how much evidence you need so that your complaints be legitimate.
I would simply "fire the client" (aka quit the job) if their making unrealistic claims on your time and resources, not all agencies are like that and they certainly won't survive long if they start messing developers and designers around (as they'll go elsewhere). We had a similar issue a while back from the other end where a manager was trying to put extra stuff on his developers backs but didn't understand what was going wrong (he didn't communicate well with his team), so I guess it could just be a case of them being inexperienced or feeling overly dependant on your expertise. In this case the best decision may just be to move on and find a place where you're going to be better appreciated and not be chased at all hours of the day like a headless chicken.
I think you sound pretty bitter. For your own sanity and mental health you should go and find yourself another job. If you are as good as you say you are then should not have any problems opening doors.
Good luck and get out as soon as you can.
There are many types of companies in this world and what you described is not uncommon although for a while it looked to be a dying breed. With the decline in the world economy, it's well documented that companies have made up for reduced staffing with more work, and even historically great places have been called out for becoming harder working these days.
That doesn't mean it has to be this way. You can decide to go elsewhere although you may find it more different than you think. Part of the reason people keep working at companies that drive hard is exactly that level of drive. It's not to say you want to be woken at 3am but in a lax firm some people get bored and actually crave the craziness again.
From what you described it sounds like this isn't working for you and isn't giving you a good balance. Thus you have to decide; is there a compelling reason to stay (i.e. great work, great pay, great advancement) for a set duration or is it time to move on. Personally I've found times to endure madness but always feel you need a balance and that's up to you to create, so if it's not working, don't rant, fix it. But that's easier said than done, and much easier said when you have no real dependencies to worry about.
As a final thought I will offer you this -- agencies tend to work longer than clients, they also tend to be more diversified and move quicker. Client companies go to agencies to do things well, fast and without ramping up so when they want more, they expect it to happen and the agency doesn't want to say no. Of course there are exceptions, I've known agencies to fire clients for pushing their people so if you want something more balanced, you may have to look but it does exist.