Web Software Architecture and Engineering – Life on the Bleeding Edge

I saw this InfoWorld article entitled: “Five ways to drive your best workers out the door“, and thought, instead of linking to it, I’d talk about how we try to keep talent.
One of the blessings of working at my company is the great talent I get to work with. I get to see tons of brilliant code on a daily basis, and as a manager its always a concern when working with talented people. But we try to create an environment thats a bit different from other software companies.

  1. Mistake No. 1: Keep the creative juices bottled up. – The article describes clashes between programmers and management on the best route to take. Fortunately here, we have brilliant ideas coming at us left and right, and the problem has been keeping a lid on them and prioritizing them using a formal change control process. The team meets twice a week, everyone has access to walk into anyone’s room, and ideas get approved based upon priority and impact, not politics. Its fortunate that we have such an environment. The key is not nly having an evironment like this, but also keeping it. And yes, we allow programmers “officially” 2 hours of R&D time each week.
  2. Mistake No. 2: Micromanage your staff. – Over-burdensome paperwork, lack of trust, and management having to check each and every day (if not several times a day), all add up to a culture of micro-management. Don’t get me wrong, our company is the most metric driven organization I’ve worked with, but we do it in stride. I meet with Senior members of the team daily, take part in cross-department upper-management meetings daily, and hold a department meeting twice a week. We all know what each of us is working on, I have metrics I have to sign off on at the end of the week, and most of all, we all trust each other to get the work done. Whenever things need additional clarification, we schedule meetings or meet ad-hoc. Team members always feel empowered that they have others support to get things done.
  3. Mistake No. 3: Deny new opportunities and challenges. -While training funds are tight now a days, developers are encouraged to read blogs daily, and keep up with the world out there, and life on the bleeding edge. There is a constant influx of ideas, areas to do self-learning, and time to do R&D. I’m also working on having people come up with more and more ideas themselves. We’re always throwing new challenges at developers, breaking new ground in development, and stretching our understanding of web applications. We’re also always going back to do refactoring, re-visiting and optimizing old code can be a great challenge as well.
  4. Mistake No. 4: Don’t listen to your employees. – This one is a no brainer.
  5. Mistake No. 5: Change the work environment without considering the impact on employees. – We have a high bar for hiring, and a high bar for firing. Both are extemely rare, and we know the introduction of one person to the team changes the complete dynamic inside the department. This is where we look for talented employees who are not only skilled technically, but people-wise as well. It all comes out in the interview process. And we consider them as well. As a member of the management team, I have more and more says on how employees work load gets assessed, and how we keep them engaged on the mission of the company. Radical shifts are severely discouraged, and if warranted, we look to get everyone’s buy in. No one should feel like they were broadsided.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: