Zen Web Software Management
ColdFusion, Zen, SoftwareI thought I'd throw together a list of simple and basic (Zen) web software development "principles" that I try to keep in mind as I work on infrastructure, architecture, release process planning for my company, Peoplexs.com.
DISCLAIMER: These are pretty high-level, may be obvious to many and cliche to others, but are worth mentioning because they are so often missed or ignored by very smart people and organizations.
(in no particular order)
- Communicate constantly, both upwards and downwards.
- Spend the highest percentage of time on design, UI, and detailed specifications, rather than on development.
- Under-promise, and over-deliver.
- Commit to, and invest in, professional QA Testing.
- The time to build automated tools (for testing, making builds, and releases) is well worth it in the end.
- Document, practice, and update your Disaster Recovery Plan.
- Lead Developers must manage expections for Product Managers at least as much as Product Managers manage the products.
- Use quality, time-tested, software for integrating release management, defect tracking, and project management such as Jira or FogBugz.
- Inform everyone as early as possible if project is running late.
- Adding more developers late in a project only makes it more late.
- Have Product Managers review, and then commit to, a final UI before development begins.
- Developers want and need time to do cool and fun work. Giving them some such will help motivation and productivity.
- Schedule in patch releases and archictural releases regularly, and at least 2 times per year if usage is growing quickly.
- Listen fully to all suggestions and criticism, without a defensive attitude.
- Be strong, and don't let a few clients dictate your long-term strategies.
- Invest in Technical Conferences and Training for your team.
- Empower every team member. Give each person at least one specialty that he is "in charge of".
- Trust your veterans, even after they make mistakes, as they are probably more upset at themselves than you are at them.
- Use something simple and flexible, like a Wiki, for internal documentation. And don't be too strict on *how* it's documented - you're lucky that there is *any*.
- Lead, don't push or drag.
- Celebrate, or at least acknowledge, significant accomplishments. It doesn't have to be a huge party. Something as simple as a short, yet specific, thank you on IM will do nicely... or saying to one of the Executives, "Check out the creative and helpful widget that [Developer X] whipped up last Friday!" in front of a room full of co-workers (unless Developer X is extremely shy... which sounds like a mythical person to me ;)
- Keep your negative comments to private conversations as much as you can. Publicly positive people are much more likely to be followed and liked. Of course there's a fine line you must walk to keep from seeming like you're *two-faced*.
- A fun, exciting work environment begins with you, from within.
I'll probably add to this list as I think of ramdom, appropriate items.
Peace.






Loading....