
Ask Slashdot: What Makes a Good Work Environment For Developers and IT? 261
An anonymous reader writes: I've been unexpectedly placed in charge of our small technology department at work. We have three dedicated developers, two dedicated IT people, and one 'devops' guy who does some of both. It's the first team I've managed, and I'd like to do a good job of it, so I ask you: what makes a good work environment? I have my own likes and dislikes, of course, and I'm sure everyone can appreciate things like getting credit for their work and always having the break room fridge stocked. But I'd like to hear about the other things, big and small, that make it more fun (or at least less un-fun) to come into work every day. This can be anything — methods of personal communication, HR policies (for example, how can reviews be not-terrible?), amenities at the office, computer hardware/software, etc. I also wouldn't mind advice on how to represent my team when dealing with other departments.
bah (Score:5, Insightful)
Bah.
I don't get people.
I don't want free drinks. Video games to play at work. A ping pong table. Any of that.
All of that, just EXTENDS the work day. You're not going to go in, play ping-pong for 4 hours, and then work 4 -- and get paid for 8. Instead, the expectation will be a longer work day.
In reality, all of these silly perks are just non-cash compensation for long work days.
You know what? Keep the free drinks, the catered lunch, the free this and that. Keep the ping-pong table, the toys.
JUST GIVE ME MONEY. Give me MORE money, and keep all of that!
Keep my hours SHORTER, so I can go out and PLAY WITH PEOPLE I WANT TO PLAY WITH. While people at work MAY be fun, when *I CHOOSE* who to play with, *I KNOW I WILL HAVE FUN*.
Re:bah (Score:4, Insightful)
Amen (although I will take paid lunches from time to time).
Re: (Score:2)
you pay for the lunch anyway, with your labor
Re: (Score:3, Interesting)
The FIRST thing any development team should do is work out a way to have all management between them and the actual corporate direction-setters FIRED.
Here's how it should work:
(0) Get rid of intermediate managers. With prejudice. They should get road rash when they hit the parking lot or you did it wrong.
(1) Corporate provides a new spec and a development window, for instance, 6 months.. If the devs agree, we're off. Otherwise, see (1)
(2) If corporate changes the spec at any time, the development window mus
Re:bah (Score:4, Interesting)
Classic business theory suggests you should have 3 levels. People doing the work, the people taking care of the day to day management/drama, the decision makers. Communication will flow through a system like that but the moment you add a 4th level it all goes to hell.
Re: (Score:3)
Re: (Score:3)
Because maybe the cost of the lunch isn't its value. Maybe shared food is an important team building component and teams do more than individuals.
Re: (Score:3)
Re: (Score:2)
Exactly, free food and drinks, especially good coffee, saves me time and money. The ping-pong, yeah I don't need that, but there is plenty of stuff the company can provide that benefits me.
Re: (Score:3)
Re:bah (Score:5, Insightful)
Do I actually think that the office coffee supply isn't coming, in some small way, out of my paycheck? No, certainly not. Do I think that the cup of coffee I am able to have because of it is fresher than something that came from home in a thermos, cheaper than something from the local coffee place, and more convenient than having to pick it up from the local coffee place? Yes, that I do.
It is true that the 'free' stuff continuum increasingly becomes mediocre non-monetary compensation picked out for you by the company in order to keep you in the office as you get more extreme; but for certain logistical support functions the fact that it is on site and cheaper in bulk can compensate for this. It also depends on location: some office parks and corporate campuses would have basically zero supply of food, coffee, or anything that isn't banal landscaping and generic buildings for a 15+ minute drive in any direction unless they had some sort of cafeteria facility built in(not necessarily free; but even the ones you pay in tend to be there because the companies that rent the space want that amenity available, not because a plucky restaurant just decided to start up). If the workplace is in a denser urban area, the local coffee place may still be more expensive than the office drip pot; but you'll at least have options if you want to get lunch or something.
Re:bah (Score:5, Insightful)
I like the free soda, because it acts like a canary in a coal mine. As soon as they take away the free soda machine, I know that the place is about to go under, and it is time to start sending out resumes.
Re: (Score:2)
I've arrived at the conclusion
Re: (Score:2)
Actually, it comes out of billables, as does your salary. Just because they give you a free lunch doesn't mean your salary is any lower than if they didnt. And frankly, if they have an inhouse chef, or catering, it probably is cheaper than something equivalent you can buy.
Re: (Score:2)
You eat lunch? That's bad for you and your peformance. You should snack all day.
Re:bah (Score:4, Funny)
Re: (Score:2)
If you are not pricing in the cost of meals, you are under pricing yourself.
Re: (Score:2)
Huh? The free drinks & free food don't extend your work day.. They could *in theory* shorten it.. (e.g. half hour on site free lunch vs hour long go out to lunch).
Other ways to goof off, yeah, that _could_ lengthen one's day if they abuse it.
(BTW, I don't get that free stuff that FB and google, etc., get, but I do have an office with a door.. I'm definitely jealous of that free stuff you mention, but *don't* want to work out in an open room with a zillion people.)
Re:bah (Score:4, Informative)
Amen. Pay me well. Give me an office with a door so I can concentrate on the details of whatever I'm going to foist on our customers (who, in the end, pay me). Provide up-to-date technology tools. Cut out bureaucracy.
Skip the ping-pong table and the pinball machine. If practical, have a credible onsite cafeteria as a timesaver, but no need to make it free.
Re: (Score:2)
Umm, no, you're not actually agreeing with me..
I'd love to have a ping pong table & pinball machine(s). (We actually used to have a ping pong table, and the group probably still has it, there's just no room for it.)
I *totally* wish I got the famous perks from other high tech companies.. But the one perk I *do* get is the office with a door.
Re: (Score:2)
Sorry, I was really responding to your office with a door observation. It's incredibly important and directly related to work. I'd trade all the 'non-work' perks, except salary, for that. I don't mind the non-work stuff, but not at the expense of work stuff or salary.
Re:bah (Score:5, Insightful)
Space-wise
Keep the traffic flow out of the developer work area
Have a meeting room or open space between the dev and ops area, have a big screen tv and speaker that can be attached to laptop. Put in way too many network connections, power plugs, etc... you will need them even if you have a wifi because... just because
If the devs cannot be in an isolated area, then give them high-walled cubes with sliding doors
Work-wise
Limit the number of meetings that devs have to attend, implement an agile method, follow daily stand up religiously and use that to get the info that you will need to attend all other meetings where you represent the team
Look into tools like jira, sharepoint, etc, but use manual methods first to prove it is helpful before spending a ton of money on something that you will be stuck with
This will be a marathon, sure they use the term sprint, but if you keep everybody running day and night they will leave
CYA-wise
Do not forget to cross train people, you cannot put yourself in the position to be entirely dependent on any one person, you will fail
Find a way to document what you do, maybe not full on itsm crazy-train, but know how to find out what goes where when you need it, three ring binders have their place
Test, just don't be a qa-centric d-bag about it. IT does not live for QA, but, performing proper test will save your ass more than not
Don't forget to play, if everybody plays WOW, then be prepared to banter about leveling up and grinding, if people like FPS, then be willing to host shootouts in off hours... hell maybe you can get them to enjoy golfing or spending time at the gym, these will improve their overall health and productivity
Re:bah (Score:5, Insightful)
Re: (Score:3)
Good point, a few years ago we jumped past the baseline desktop to a desktop replacement laptop that could support two high res monitors along with having the laptop screen up and on
This allowed for a vertical text screen, a browsing screen and a 'this is what the app looks like' screen being used simultaneously
The laptop, extra monitors, docking station and rig to hold the monitors more than paid for themselves
Re: (Score:2)
Funny that you mention that - the guy running the web side of the house recently talked the boss into MacBooks for all of the web staff, along with a bunch of extended gamut displays. We do no OS X or iOS development whatsoever, nothing that involves having to ensure what's on the display is the same as on the printed page, and everyone else (the vast majority of our staff) work
Re:bah (Score:5, Informative)
Bah.
I don't get people.
I don't want free drinks. Video games to play at work. A ping pong table. Any of that.
All of that, just EXTENDS the work day. You're not going to go in, play ping-pong for 4 hours, and then work 4 -- and get paid for 8. Instead, the expectation will be a longer work day.
In reality, all of these silly perks are just non-cash compensation for long work days.
You know what? Keep the free drinks, the catered lunch, the free this and that. Keep the ping-pong table, the toys.
JUST GIVE ME MONEY. Give me MORE money, and keep all of that!
Keep my hours SHORTER, so I can go out and PLAY WITH PEOPLE I WANT TO PLAY WITH. While people at work MAY be fun, when *I CHOOSE* who to play with, *I KNOW I WILL HAVE FUN*.
I really disagree with this. I'm going to spend about half my waking life at the office, I sure as hell want it to be an interesting place.
I don't know about other people but for me productivity is 90% motivation, if I whittled away half the day but worked with complete focus for the remaining half I would be a fantastically productive employee.
So for that I would say to keep things fun and focused, tasks should be small with well defined goals, even if you make some busy work it won't matter because the workers will be that much better. There's nothing worse than being given a giant task with no clear purpose or metric by which to try it. Include a couple paid coffee breaks. People can't work effectively for 4 hours straight, a couple glances at /. aren't the solution and developers sure as hell won't waste personal time recharging for a couple minutes at the office. Give them a pair of coffee breaks, encourage them get away from their desks, the increased productivity will more than make up for the lost time.
Make some sort of intermittent fun events at the office, food events or games of some kind, don't make it a corporate spirit thing, just a thing for people to have fun. It breaks up the monotony for the people who participate, if nothing else it makes the office a more engaging social environment and gives people an opportunity to interact.
It doesn't work for everyone, in general the older the employee the stronger their non-work commitments and the less they'll be interested if office socialization, but if you can make the office environment more engaging you'll improve productivity and quality of life for everyone involved.
A final thought might be to try pair programming. It hasn't really caught on because programmers tend to be fairly introverted and computers are very personal spaces. But the published studies suggest it can be very effective for both productivity and employee satisfaction, you improve knowledge sharing since its a lot easier to ask a question when you're already talking and you kill a lot of time wasting since it's a lot harder to zone out when interacting with someone.
Re: (Score:2)
Re: (Score:2)
This. I've never understood why IT people in particular would be easily enticed by such pre-selected perks. They're supposedly smart individuals who know what they like. If anything, try not to get in the way.
Re: (Score:3)
Because of many reasons.
My brain isn't always-on. Sometimes I stare at the screen and can't concentrate. At such times it's nice to be able to go and do something else.
Something like table football gives me a way to chat with colleagues, find out what they're doing, share the work I'm on, exchange ideas, solve problems, chat about non-work things, build relationships.
When I am heads-down working on stuff, letting my less focussed colleagues go elsewhere to chat, relax, refresh their brains means they aren't
Re: (Score:2, Funny)
I need to say that just because you don't want those perks doesn't mean that the rest of us don't want those perks, too. We do want them. Maybe they don't bring value to you, but they bring great value to the rest of us.
I am what you would probably call a "hipster". I'm a Millennial, and when I was growing up my parents and teachers told me I could be anything I wanted to be. Do you know what I wanted to be more than anything else? I wanted to be a computer programmer. I wanted to be like Linus. I wanted to
Re: bah (Score:3)
I think that was an elaborate joke. I think...
Re: (Score:2)
In practice, once you pay people enough that they can stop worrying about money day-to-day, more money doesn't increase employee happiness much. What it can do is encourage unhappy employees to stick around, and that's not always good. People are more effective when they get along well with their coworkers and that includes conning them into social events once in a while. The guy who doesn't want to socialize with coworkers at all, just wants more money, isn't someone I'd enjoy working with.
"Fun" events
Re: (Score:2)
Acting like you care makes a difference.
Even when it's just acting, it sends the message that they at least thought about morale.
Re: (Score:2)
"Fun" events are good for morale...not just because oh hey minigolf is fun (or whatever), but because they say "we care enough about making our people happy, that we're canceling a day of work just for that". Acting like you care makes a difference. Again, it doesn't do the job for everyone, but the people it doesn't impact can be pretty toxic on a team.
When I interview after seasonal layoffs, one of the questions I ask of my potential employers is: "What is your company culture? What do you do around here?"
Some companies the people look confused for a moment, then say things like "we have standup meetings every morning, that is part of our culture. If you are asking about parties and such, we have a summer party and a christmas party. Is that what you mean?"
Other companies the workers get excited and start talking. "We have a monthly birthday bash with
Re:bah (Score:4, Insightful)
Re: (Score:2)
Catch is more money, honestly does not work that well, once you get beyond a some multiples of the minimum wage (pathetically miserable minimum wage in some countries). Employees motivated purely by money will leave at the drop of a hat for more money and of course when purely motivated by greed are likely to lie, cheat and steal and disrupt company activities in many ways. So other stuff comes into play like annual leave 6 weeks of holidays, long service leave which start being available after a decade, R
Re: (Score:2)
Not just money (Score:2)
The AC who said "more money"? I don't want to work with people like that. Sure, money is important, but it doesn't make the work environment pleasant, it just motivates you to not dropkick the job out the window. I've known some very well-paid people who were profoundly unhappy with their jobs.
Assuming you have decent, halfway qualified people, the best thing you can do is respect their skills. Don't micromanage them: make sure they know what their tasks are, protect them from outside disturbances (make sur
Work space (Score:3)
Most people would probably like an office with a door, but it people want something else, each person should be able to choose for themselves.
Do not involve other departments or operations (Score:5, Funny)
Do not tell IT anything and then blame them and throw them under the bus when it doesn't get done. Give a wonderful Window at 3pm on a Friday for somehting that needs to be ready by Morning. Also having IT management do 15% layoffs each quarter do wonders for morale too
Never invite them to meetings as they are a cost center. Create a culture of constant reminders of this and you will obtain the best and brightest talent
Comment removed (Score:5, Insightful)
Re:Offices. (Score:4, Insightful)
Re:Offices. (Score:4, Funny)
Dude, have you never heard of synergy? All that noise around you is nothing but synergy and it'll improve your productivity !!1!
Re: (Score:2)
Speak for yourself. I find the improved productivity of easily asking questions and overhearing your team's conversations blows away the loss due to occassional noise. And its a hell of a lot more fun to interact with coworkers than stare at the monitor unblinking.
Re: (Score:2)
Unfortunately, I've found it's extremely easy for me to get snapped out of the zone when I'm concentrating hard on something. I've learned to live with it, but working in an open environment makes things more challenging for me. That being said, I do agree that it makes collaboration and quick planning sessions FAR more friction-free.
Overall, I think it's an environment that definitely has benefits, especially for some types, but certainly has its drawbacks as well, especially for the more reclusive or ea
Re: (Score:2)
Why not do both? Open plan for day to day activities and a quiet room that people can go to when they need to concentrate -- kind of like what the library is often used for at universities.
Re: (Score:2)
That's not a bad idea. The big downside is that unlike a library study area which just involves bringing a book or two to read, it's often a little harder to move your entire day-to-day work environment. For me, that typically involves one or two workstations, several monitors, specialized hardware (depending on the project) and an ergonomic keyboard, not to mention a work environment / OS / software specifically set up the way I like it. It's a bit more practical if you regularly use a laptop, I suppose
Re: (Score:2)
Hah, improved productivity from overhearing team conversations? Bullshit. That's the biggest loss of productivity in the world, right there. Everyone ends up spending all their time talking, and not actually doing work.
It's also not even more fun. It's in fact very frustrating to not be able to actually get things done.
Re: (Score:3)
Re: (Score:2)
Make sure they know what they're supposed to do (Score:3)
Make sure that everyone knows what they're supposed to do, what's expected, and when it's due. It's really not that hard, except that apparently it's really hard.
Re:Make sure they know what they're supposed to do (Score:5, Insightful)
Make sure that everyone knows what they're supposed to do, what's expected, and when it's due. It's really not that hard, except that apparently it's really hard.
It is really hard. Software is very difficult to schedule. I was once give six weeks to complete a complicated task, but when I started reading the code, I realized I could quickly tweak it to do what was required, and I was done in two hours. Then my boss asked for a very simple change, and gave me two hours. It took six weeks.
Re: (Score:2)
The hard part is making the goals realistic. If expectations are unrealistic people will not be happy when they hear them.
Review often. Review quickly. (Score:3)
The problem is that the day-to-day emergencies get in the way of the 11-month-projects.
But the day-to-day emergencies are soon forgotten and the 11-month-projects are what you are judged on.
Most people here are probably familiar with the "annual performance review" and how much they hate it. So drop it.
Instead, replace it with a LOT of shorter, mor
Let people choose their own (Score:5, Insightful)
One of the smartest things the company I work for does is let people choose how they want to work, so long as it doesn't interfere with others. Lights off? Lights on? Headphones? Door closed? Door open? Window? No window? Within reason, it's our choice, and that means that we can tailor the environment to whatever works best for us. The end result is that we're not only happier, we're also more productive. Some people work better with ambient noise, others can't stand any distractions at all. Letting each choose their own is the only way to make it work for everyone.
Likewise, as you manage people, understand that they are each individuals. Understand what makes each of them tick. Understand that what works for one will not work for another. Learn them and then meet each of them where they are, rather than asking them to meet you where you are. Again, you'll get better productivity out of them if you understand their strengths and then tailor the tasks to those strengths, rather than expecting them to fill a role they're not good at.
Re: (Score:2)
Lights off?
Yes, please! Every desk in the building at work has a 4ft long fluorescent tube for when one needs light to read manuals, printouts, etc. But in addition to that there are another set of 3 tubes about every six feet in the false ceiling with practically non-existent diffusers. For me, this causes a lot of eye strain due to the glare on the monitors and in some cases, a bare tube being in my line of sight when I'm trying to read something on the screen. At one point, I brought in a baseball cap to wear a
Filter the work area (Score:5, Insightful)
I'm in a similar situation as you, OP.
Managing distractions is the key thing I am working on.
I manage a team consisting of a systems engineer, one help desk person and a bank operations clerk that depends heavily on the technology group.
We are unfortunately not back office, we are very accessible to the general bank staff. This has its blessings but far more detractors in my opinion. There's an expectation by the rest of the bank staff that my people are accessible at any time for walk up questions. This is far from the case, we all have our projects and work queues.
So what I have been doing to deflecting these walk ups and ad-hoc requests as much as possible. I find these distractions to be the biggest hindrance to productivity and employee happiness for my group. My people just want to keep things running and solve business problems. They do not want to help people download photos of Mr. Sniffles to their "hard drive".
Long story short, consider the distractions whether it be operational, logistical or even political. If you can insulate and protect your people from the minutia that is the modern workplace, I think you will find them productive and happy. Your people should feel like they completed something each day they leave. Also leave at good hours and be able to leave the office behind on the weekends.
The best manager I've worked under (Score:5, Interesting)
... was an older man who started by making it clear that his job was to stand between us developers and the management, and to shield us from all the shit that was raining down from above. He was also technically competent and understood what we were doing, that helped a lot. But most impressive was his integrity. He always gave credit to the guys who did the good work, and was always willing to take the blame when things didn't work well.
Re: (Score:2)
I can either give you a mod point or comment. So I'll comment. This is absolutely the case.
Best manager I ever had wasn't all that technical, but on the day I started working for him he told me "My job is to make sure you can do your job". And he did, and he had my back whenever I needed it. I've had others that came close, and more than one that had no idea what they were doing, let alone be put in a position of authority over people.
I was promoted to manager a few years ago and tried to keep that in m
Re: (Score:2, Interesting)
Counter these good managers, with one I had.
Came in, saw that I used a solid box to raise my monitor a foot -- and instantly decried that it was unsafe, and that I needed to remove it.
When I asked for something to replace it, apparently buying a $10 part at Office Depot was absurd, and that all employees should have "identical workspaces" and that "no one was special".
Meanwhile, due to my size (height), there was no way to use the keyboard, on the desk, without constantly staring down at the monitor, a foot
Re: (Score:2)
Yes, god yes, this. The most valuable TPMs and managers I've ever had, were valuable because they got between business/marketing and us. You should know your team well enough to know what they can realistically do, and then do everything humanly possible to set expectations of people outside the team to match. Devs should never, ever, ever get a requirement, even a simple task, from someone that is not a direct manager...one of the worst things that can happen to a dev is getting tasks from four differen
Minimize distractions (Score:5, Insightful)
Try to minimize distractions. Make sure you don't interrupt your employees constantly for trivial matters.
You might not have a lot of control over your layout, but also try to avoid placing people in situations where other people will distract them. For example, keep the coffee pot in a physically separate room, so chit-chat doesn't interfere with people trying to concentrate.
Sometimes you might need to enforce quiet hours.
Trust. (Score:5, Insightful)
The most important thing - do not micromanage. Trust your employees.
To be perfectly honest, you want to be in a position where the only thing you're doing is making sure they don't get overworked and aren't doing projects that don't make sense. All you need for that is a simple repeating team meeting where you talk about what you've been doing and whats coming up.
If you have a problem employee, deal with /that/ employee. Don't fuck the whole team because of one jackass.
In short, treat them like fucking professionals.
Re: (Score:2)
In short, treat them like fucking professionals.
I guess that works if you're a pimp.
Re: (Score:2)
In short, treat them like fucking professionals.
I guess that works if you're a pimp.
In strangely relevant news this week: Nevada brothel seeking paid testers; men, women, and couples for quality assurance. [nydailynews.com] Fucking professionals, indeed!
Just get to know your team (Score:2)
You have a small enough team to just gather their feedback rather than posters on a forum. You have an opportunity for more tailored measures to make a good environment, though a challenge that some ideal changes are likely to be impractical to achieve for such a small team. For example if you don't have offices and they want offices, construction isn't going to happen for a team of 6. The types of things you can do are likely to be highly subjective.
For example, some people do best with morale boost by
Some things... (Score:5, Insightful)
Try to listen more than you talk.
Be decisive. Don't micromanage, but there are some times where you have to make a decision. That's now your job. If you ever want to get things done, you need to decide things after an appropriate amount of time and then see it through.
You're not always going to be right, but you can't let that paralyze you. Better to be wrong and learn from it, than to do nothing when something needs to be done. Which is not to say that you don't think about it first.
Get goals from your boss. You don't have to make all the decisions. That's what your boss gets paid to do too.
Think about the business. If you're a middle IT manager, you're probably still at least a little technical. That's fine. What you aren't is a pure technician/admin/dev anymore. You need to start thinking about what makes sense for your team and your place in the company as a whole. Hint: retaining your staff is as important from a business angle as cutting costs, but you should think about both.
You're probably a supervisor now. That means you should take evaluating your team seriously. Reviews aren't there so you can give them all 3s (or 5s), they are there so your team knows how they are doing. That's *important*. Most people want to know how to make you happy so they can get raises. The others... need to know when they are screwing up. If you aren't spending real time and thought on giving good feedback, you're a shitty manager and you should resign immediately.
Be willing to do anything that you expect your team to do, including stay late or up early. However, again, you're not there to do the same things as the people on your team. Stay late and coordinate if that is needed. If not, go home and get some sleep so you aren't crabby the next day. Or so you can cover for the guy who was up all night.
Your team should be able to do their job without your assistance unless they are in a really bad spot. You are important because you will be the contact between your boss and your team. You will get the team the resources they need to get their job done. If they need Dev support, you contact the Dev manager to make sure they know about the need. If they need more network cables, you get the network cables.
Overcommunicate. You make sure that your boss and higher ups are not harassing your team for statuses. You provide the statuses. You manage up, as well as down.
If you are hiding in your cube coding or something all day, you're not doing your job. Walk around a bit and see what is going on and if anyone needs something.
You may not be their buddy, but you don't have to be aloof. Find out about the people on your team and what's generally going on with their lives.
When people leave your team... thank them for their work and congratulate them on their new opportunity. Even if they were an asshole.
Re: (Score:2)
Good stuff. This could be printed out and handed to every middle manager in I.T., and it'd be the single best summary of what they need to do that I've seen yet.
A+
Noise levels are an issue (Score:3)
Noise levels have been an issue at many places I worked, forcing me to use noise cancelling headphones and to play music whenever I was trying to get any actual coding done. And it's not just noise -- it's interruptions from people sneaking up behind you and tapping you on the shoulder when you're obviously busy.
As a result, even cube-land is vastly preferrable to the "open office" that some work environments provide. An "open office" just lets management see whether everyone is working at a glance -- it provides zero benefits to the people who are actually trying to get the work done.
I'm not advocating closed-door offices, though -- those destroy the team environment, and turn everyone into isolationists.
But damnit, man, don't insult your people by expecting them to put up with hearing everyone else's phone conversations and cursing-at-the-computer at full volume because there are no dividers in place to reduce visible distractions and dampen noise levels!
Re: (Score:2)
Yeah, I personally don't mind being tapped on the shoulder at all. But people blowing music, yapping on their cellphone next to you, and babbling about non-work related shit non-stop, thats just fucking annoying, and that also make me wipe out the noise cancelling headphones.
Re: (Score:3)
Involve your staff in technology decisions (Score:3)
The absolute worst thing that can happen is when some clueless manager gets a powerpoint sales pitch, then comes in and says "we're doing everything in now!"
Inevitably, the sales pitch is either grossly exaggerated or outright lies, the "solution" costs a fortune, it's not flexible, anytime you have to customize something (and you will if your business does anything worth doing) it costs a fortune and requires an army of consultants, and you're just going to annoy staff into submission with both inferior and more expensive tools.
I've dealt with this. They come in and promise it can do the moon. Then you ask said manager if it can do any specific thing that we're actually doing right now. They stammer and have no idea, but they're sure it must be able to, because the salesman said it could do anything. In a couple of years when they realize it actually can't without five times more effort than what you had before, said manager will of course never admit their mistake.
If you're going to be making those decisions, involve your staff. They know what you actually need, since they spend every day dealing with it.
Also - walls. Walls are good. Open plan offices are productivity destroying monstrosities. The biggest problem developers have is distractions, and open concept offices are designed entirely to create more distractions. If two people need to talk about something, the entire office doesn't want to know about it.
Re: (Score:2)
The absolute worst thing that can happen is when some clueless manager gets a powerpoint sales pitch, then comes in and says "we're doing everything in HTML now!"
FTFY...
Good managers don`t (Score:2)
Good managers don`t torture their developers, you should be constantly asking what is preventing them from getting their work done and do something about it.
One Word: Offices (Score:4, Interesting)
Read Tom DeMarco on this -- I think the book is "Managing Programming People". In order to be productive, people need quiet and unmolested time. This means offices.
Also read "Slack" by DeMarco. In order to be happy, they need PROGRESS. And in order to get progress, they need time to solve the problems which come up which are not directly related to the deliverables. If you give them slack, you get less deliverables in the first part of any project, and way more by then end. You also have programmers not quitting.
Take a weekend and read everything DeMarco wrote.
You're asking the wrong people... (Score:3, Insightful)
I get it, you want a broad scope of opinions, but don't forget to ask the six people you're managing. We can't tell you what will make them happy.
Start with good work environment (Score:2)
Good natural lighting. Quiet areas for concentration and common areas for meeting and brain storming. You might try the old "put some whiteboards by the bathroom and or coffee machine" trick. A nice break area is good too with plenty of palatable coffee and teas is good. It draws people together. The occasional payday lunch or pint after work on payday, either host or no host, helps people to connect as well.
Keep meetings short. Whether or not you are "Agile" a 15 minute stand up is a good way to start the
Good environment = No Leonard (Score:2)
Cube farm space. This dude is the most pissed off person I've ever worked with. Pounding the mouse, pounding the keyboard, 'not quiet' grumblings. Once he gets fed up enough (daily), he comes to one of the other of us, and starts bitching in person.
Nothing is good enough. There is always some problem, caused by 'them'. 'They' did this, 'they' are out to get us...
The days (or hours) when he is not in the office are bliss.
You, as a manger.....get rid of Leonard.
You will succeed (Score:2)
#1 Productivity Boost: No Distractions (Score:3)
A clean quiet workarea with no visual or auditory distractions.
All I want to do is code all day long.
All you want me to do is code all day long.
Then, you bombard me with people walking by, talking around me, interupting me, IM'ing me, it never ends...
And I get NOTHING done... do you get it?
No, you never will. You manage by interupting me...
Re: (Score:2)
Errr...no. Well, unless you're working for an outsourcing firm I guess. The coding part is trivial, and doesn't take that long. Figure out what to code, that's harder, and you're not going to do that right alone in your silo with a few hours per sprint of design sessions.
Be a translator, a general, and a good waiter (Score:2)
Translator:
Mediate with reality as a guide between stakeholders and software/IT people.
Don't ever ask for an estimate then say something to the effect of let's try to get it done in half that time.
Live with the triangle and manage it. Something has to give. You decide what.
Waiter:
A really good waiter doesn't break my flow when I'm in the middle of a good conversation, and yet is there with useful solutions or suggestions when needed, and anticipates next needs. A good waiter facilitates a great meal experie
Quite simple (Score:5, Insightful)
Don't hire assholes. If you have assholes on your team, find a way to get rid of them quickly, and replace them with people who are not assholes.
I don't really care - and neither should you - if the person is the most technically amazing person that has ever graced the Earth. If they are an asshole, it will sow resentment, make your team less effective, and make your job harder in the long run.
Not sure if you have assholes? Start weekly 1-on-1s with each team member. These are good practice in general, to help find and solve problems before they become major issues. But you will also be able to pick out the assholes pretty quickly.
You may think I am being silly, but I am not. If you think back to any unpleasant experience you have ever had at work, I am willing to put money on the fact that it was caused by someone who was an asshole.
Ridding your team - and hopefully, your entire organization - of these types of people will result in a group of people who are willing to do anything for you or each other.
Re: (Score:3)
You know what you get if you don't hire any assholes? Badly designed software that's broken. Because the "nice" people won't object to really stupid ideas put forth by enthusiastic idiots, and they won't get on the case of the people writing shitty code until they fix it. You need assholes, just as the Roman conquering heros needed someone whispering in their ear "memento mori".
Re: (Score:2)
No. You need people who have 2 bits of communication skills to be able to make clear arguments. There are ways to communicate without being a dick. If you just go being a prick as the only way to get your point across, you're just not that good.
And yes, the irony isn't lost to me that I fall squarely in the category of people who aren't good enough to make my points properly. That doesn't mean there aren't people better than me at it.
Re:Quite simple (Score:4, Insightful)
Let's review what assholes do:
1) go around gratuitously insulting people
2) fail to recognize other people's contributions
3) have an aggrandized view of themselves
4) have a confrontational attitude to most things
5) do not beat about the bush when they disagree with something
If is perfectly possible to do #5) without doing 1-4. That's the difference between a programmer who is a bit blunt in the service of the truth and an asshole.
Joel on Software already answered this (Score:2, Interesting)
It all boils down to the important thing is removing the distractions. It takes something like 15 uninterruppted minutes to get in the zone where everything just starts to flow and constant interruptions screw that up.
Here is a handful of his blog postings on the subject, you should just read his entire archive, its all his opinion and view points but its pretty good stuff.
http://www.joelonsoftware.com/articles/fog0000000022.html
http://www.joelonsoftware.com/articles/BionicOffice.html
http://www.joelonsoftw
A boss that actually cares! (Score:4, Insightful)
actually there is such a thing as a free lunch (Score:2)
Wrong crowd (Score:2)
There will be a million different right answers to this question. The problem is that the question is addressing the wrong crowd. Ask the people who work for you/with you what they want, what they find important. Stop guessing/asking strangers and just get to know people.
Good communication (Score:2)
A good work environment is one where people trust you and you trust them. Trust comes from communication. And I mean the clear communication that has a clear objective and purpose, not the management buzzword bingos that fill in meeting time.
Everything ends up tying back to good and positive communication.
Some insights:
- Setup an IRC chat. We tried many other group chat systems before, and we always come back to IRC. Choice of clients help as everyone will have their preference. There are also a lot of bot
upgrade budget (Score:3)
peopleware (Score:2)
go read "peopleware" by demarco and lister. this classic addresses what makes a productive workplace in creative technical work. indispensable.
more freedom and flex time to senior workers (Score:2)
Stay with the Expert-System and make it visible (Score:2)
Re: (Score:2)
Jesus, you're paranoid. If I was put in that situation, aside from reading a lot of books, Slashdot's one of the first places I'd go for advice...considering we're the same kind of people he'd be in charge of. Remember when comments here used to be valuable?
Re:Really? (Score:4, Insightful)
The first place i would go would be to my staff. There's only a few of them, just ask them what they want from a manager - that'd be a fucking first!
Re: (Score:2)
You know I really really want a Sims game that's specifically office management now. Theme Hospital was the closest thing and it's old as hell and not even that similar.
Re: (Score:2)
Re: (Score:3)