I’d consider myself less of an “Enterprise Application Manager” and more of an “Answer phones, open doors, watch irrelevant webinars” type of developer. In a smaller company, that wouldn’t be a problem really, and having worn a variety of hats, I have had my fair share of do something that isn’t programming to better help the company. But lately I find myself doing far more than focusing on developing and fixing bugs for software when I’m at work. This has been damaging to my progress and productivity and has resulted in less than ideal meetings with higher-ups. These are all issues that really shouldn't exist in a larger company. It’s a vicious cycle that no one seems keen on fixing or even acknowledging when asked 'why is this project late?'.
Companies should understand, acknowledge, and help identify stress points for their developers.
If your developers are having to field calls from outside vendors looking to sell IT solutions or inquire about the snack machines, this is a problem. Developer’s phones should never ring unless the person on the other end is a project manager, a boss, or co-developer looking to discuss things directly related to a project they’re working on. For every phone call I’ve had to take, it’s cost me upwards of 20-30 minutes to regain my focus and then remember everything I was juggling in my head. I’m not even going to get started on the mountain of useless emails and people thinking I am the fixer of all the things of the internet :wink:
Cubicles are a nightmare, they really are. I’m not a huge fan of the open-office plan, but I’m absolutely against cubicles. Especially when placed in areas of high foot traffic, near heavy doors, or next to the printer. The less your developers have to worry about the FedEx delivery woman knocking on the door, the better. The more quiet and secluded (for the most part) the developer’s work area is, the better! If you can’t give your developers and engineers their own office, at least give the a quiet place to focus and work.
Corporate training videos … having to write down notes, and then take tests to validate the fact you just spent 30 minutes watching said video is insane. Yes, I understand corporations need to have standardized training and ensure that their employees understand new changes, but 99% of those things are a waste of time. They aren’t teaching the developer new technology or helping fix bugs, they’re actively reducing the amount of time he or she has to focus during their work day.
Burnout is a real issue we all face, from painters to politicians. I get it. If the corporate environment is to produce healthy and happy developers, allowing them to take time off to reset themselves or take off an hour or half hour early would be a welcome benefit. Due to the lack of consideration about having a life outside of work and the emphasis of working even when everyone has gone home, burnout has a domino effect. You become less focused, more tired, and this trickles into your personal and family life. Though I refuse to answer emails or calls after 5, I’d still appreciate if I were able to leave an hour early from time to time especially if I haven’t gotten anything done in the past 3 or 4 hours.
In the end I feel like the attitude and respect for the office based developer should change. Most of us struggle as it is tracking bugs and implementing fixes. When we have to deal with a lot of unrelated situations and issues, it’s only hurting our productivity and ultimately, the company itself.