Google   web blog

Friday, December 28, 2007

Avoiding Hiring Mistakes: Avoid Time Pressure

The worst scenario of recruitment is when you have to make a decision very quick. Yes, sometimes it’s not possible to wait, but remember time is a bad advisor here. Usually investing time into going through another few interviews brings better results.

People generally suck in writing their resumes, so chances are good you overlook a gem in a sea of applications (if you’re fortunately enough to have the sea of applications). And when you talk about position when there’s limited number of candidates why not to talk with them all?

Another thing, you’ll probably get a couple of good papers not just after you’ve published your job ad but later. These are usually people who doesn’t have to find any job very quickly but those who just try to move themselves further as professionals. Usually not only they have good papers but they’re good employees after all.

Having said all of that, sometimes you will meet a sure shot. Someone who you know you want to employ a second after the interview. Then just go for it. Don’t be a slave to schedule either way.

Whole avoiding hiring mistakes series.

Monday, December 24, 2007

Sharpen the Saw

We usually work under pressure of time. We’re late with deliveries, customers squeeze us with deadlines etc. In the run to complete task as soon as possible we often forget out tools have become worn and it’s time to sharpen the saw. And it doesn’t really matter if your tool is a saw or a brain.

Take several minutes to actually design the important fix before coding it.

Think how to verify if all scenarios have been covered with the new function.

Spend a quarter thinking where communication between PMs can be improved.

Or better. Make use of some free time to leave the work behind. Because there’s one way to sharpen your brain – let it have some rest.

And let it be my wishes for you on Christmas – have some rest and distance to all professional issues.

Friday, December 21, 2007

Clue of Project Management

Project management is often reduced to discussion about methodologies used to help with the process. We are agile. You are formal. And they are not only formal but also waterfall, ouch. OK, that’s a part of project management, quite an important one, but that’s not the clue.

Show me whichever methodology you think is the best, I’ll give you a bunch of good people and the project still can fail. Why? Because you can live without a methodology to deal with projects and can still do your job (although no one says it will be easy). You’d be surprised how many companies still employs that old gung-ho technique called sometimes “Halleluiah and forward!” And they can be successful.

Why is it so? Because the methodology itself isn’t a clue of project management. If I had to look for the core of managing projects I’d go for a combination of few things.

1. Communication. First and the most important one. As far as your project team sucks in communicating with each other and with the customer you’re doomed. You’ll lose time, money and people’s energy doing unimportant things or not doing important things or hitting the wall hard with your heads. Developer will state the code works because he misunderstood bug submitted by customer. Service engineer will reconfigure servers as it was stated in old out-of-date specification. PM will set wrong priorities as she hasn’t verified customer’s priorities. Poor communication is usually enough to bring any project into serious problems.

2. Understanding of customer’s goals. And when I say “customer” I don’t mean a company, but personally every single person you work with. PM, tester, technical director, marketing manager, everyone. That’s tricky part because usually when you work with a new customer you don’t know people you’ll interact with. Later, when their attitude will be changing you’ll be guessing what the heck is happening. And you won’t know as far as you don’t understand people’s goals. Especially in a big organization they can be quite different than you’d expect and quite different than company’s goals.

3. Focus of the project team. When project team doesn’t know what are they exactly doing (on the high level) and why you’ll always face a series of small issues which shouldn’t happen. Someone won’t do high-priority task. Developers will be switching a bug between them saying it’s not in their code. Fixes will ruin other functionalities. OK, none of them can be the only reason of failure, but when combined they’re really hazardous. A number of distractions also influences the focus of the team.

Nothing here tightly connected with any of project management methodologies. Sure, personally I’d add e.g. flexibility to the list, but on the other hand I’ve seen at least several those hard-core formalized projects which ended up as successes, so you can live without that.

If I had to summarize it shortly – clue of project management is to know what should be done and for whom. Unfortunately it only sounds easy.

Tuesday, December 18, 2007

Avoiding Hiring Mistakes: Internships Stupid!

When you look for inexperienced candidates it’s much harder to correctly judge their potential. Usually you won’t find a number of clues in resume, because if there were many of them it wouldn’t be an inexperienced candidate. Probably it will be hard to talk for very long about merits because, you know, you talk with the person without much experience. It’s quite possible you’ll have some doubts and it was told doubts mean no hire.

Anyway there’s other way. Internship is different relationship than typical job. When intern leaves after a month it has much smaller impact on the team when regular employee leaves after three months of probation. Internship is also cheaper. Management has no stress when interns do something not very important, while it’s much harder to convince bosses when you talk about regular employees.

Personally, I prefer to offer one-month internships. Our cost is mostly time of intern’s guide and most of the time there’s quite a good return on that investment. On the other hand a month is enough to see person’s attitude and learning curve which are two most important factors when you think about inexperienced candidates. With internships you can catch nuggets, which would be very hard to find other way.

Whole avoiding hiring mistakes series.

Thursday, December 13, 2007

What Is Your Mobile Website?

We’re becoming more and more mobile these days. Yes, I know, I should try myself in “The most obvious thought of the day” or something like that. We’ve already moved out old-school thick clients to websites available from any browser on any computer. Next step is already there and these are our mobile phones.

We don’t carry our laptops everywhere and even if we do it’s not always convenient to use them. On the other hand you can operate typical mobile phone using one hand while standing in crowded bus.

For those who are still there loosing their last hope I actually might have something to tell which is at least a bit less evident – thank you for support. I’m going right to my point. Usability.

You have your website (whatever it does). Think why mobile users come and how they interact with the website. Company’s home site? They rather won’t come here from their phones. Newsy site? Chances are quite good. On-line game? A sure shot. Some kind of niche search engine? Again, mobile users will be there.

And when they are, what do they see? A fully packed 500k page? Scrollbars both on the right and on the bottom? Pictures? Or rather a simple page with limited information but delivering content fast.

News? Headers are enough in most cases. You won’t find many amateurs of complex reports read on mobile phone out there. On-line game? You should go for basic operations, possibly those users have to execute very timely. Search engine? Easy access to search box and light-weight easy-to-scroll result list. No pictures please. Content has to be adjusted to the device it is accessed from.

And another thing, probably even more important. Navigation. Forget mouse steering. Forget even keyboard-driven approach. Now you have 12 buttons to rule them all. Entering accounts and passwords becomes a pain in the ass. Standard shortcuts are useless as you neither have Ctrl nor O (to open something in that example). Positioning and order of links becomes crucial part of your design. The world of 320x396 display and 12-key keyboard is just different.

I think the most interesting case we have above is on-line gaming. There are a lot of games now, which base not on World of Warcraft or Second Life model (thick client and on-line world somewhere there), but can be accessed from a web browser as a client. Usually the key thing there is coordination of actions you do. E.g. the match is played every day at 6 pm or you have turn every day to build something in your empire or your character’s action points regenerates slowly over time etc.

I’ve heard stories about people setting up their alarms on 3 am just to gain some advantage over other players or asking their friends to perform some action when they couldn’t be on-line. With easy interface on your mobile users can play everywhere and always. The only prerequisite is usability of mobile app. Users can’t spend half an hour for an action they’d complete in a minute while using “adult” browser.

If I was creating an on-line game now I would start from mobile interface and then go into classic browser.

Avoiding Hiring Mistakes: Trust Your Intuition

When you interview a candidate remember you have this ancient strange thing called intuition. Use it. And don’t be afraid to use intuition as an argument to support your decision about the candidate (no matter if it’s positive or negative). As far as you think consciously about intuition it’s as good source of feedback as anything else. Having to very similar candidates it would be probably the most important factor I’d base my decision on.

That’s definitely much easier for women as they use intuition naturally in many situations but I encourage all to follow above advice when hiring. It can be a really good indicator. I admit to use intuition quite often when hiring and so far I can’t complain. And really, I’m not a woman. I’ve checked it. Twice.

Whole avoiding hiring mistakes series.

Tuesday, December 11, 2007

Project Management Methodology Trap

You’re a project manager or a developer or a support engineer. Doesn’t really matter. You use some project management methodology. Agile, iterative, formal, whatever. Doesn’t really matter. When a serious issue appears on the horizon, your methodology tells you more-less what the person in your position should do. Reject any external change until current sprint is finished, choose the development cycle which the feature will be added in, start formal change request process or whatever.

That’s the default path. You can follow the path and probably no one would blame you. Unfortunately there’s a trap in that approach. There’s no procedure which can tell you how to act well in every possible situation. All you can find is what to do in typical situations. Unpredictable things happen much more often than once in a lifetime. Actually you can predict that unpredictable will happen and it will happen quite often. In these situations default answer shouldn’t be default any more.

We had a subcontractor who failed to fulfill their commitments within the project. They didn’t really care about potential consequences because they didn’t intend to continue cooperation in the long run, as it appeared later. On the other hand our deal with the customer was crucial for us.

The default answer was: squeeze the subcontractor as hard as possible, while trying to calm the client down. We would probably take another 3 or 4 months of painful cooperation and finish the project anyway, as it already was on quite advanced stage. We did something else. We overtook the part of the unfinished development work from the subcontractor (which required ad-hoc team reorganization) and completed the project in less than a month. If we had to justify our decision we’d be talking about vague criteria like belief our team would make it or feeling it was a right choice. Try to find them as decision-making factors in any project management methodology.

Another example. After a couple of months of joint development with one of our clients we heard several um... let’s call them advices. The client expected extremely flexible approach up to possible changes requirements on any stage of the project with the instant reaction (implementation) on our side.

The default answer was: we follow this or that methodology and it tells you we have to formally manage changes. That mean you have to wait until we’ll be finished with current iteration/sprint/whatever until we’ll do that. Or better: hello, there’s not a word about that in analysis. Can’t do, sorry. On the other hand we used common sense which told us the joint development program is very valuable for us and as far as we’d set up our thinking on paths expected by the client it can go quite smoothly and both sides could be happy. So without much thinking we went for that so-called flexi project management (which has more to do with “flexi” than with “project management”). After all the both sides are happy I guess.

When you switch off common sense and constant thinking how issues can be solved other way than default one you fall into the trap. Standard answers are good for standard questions which are surely far more than 90% of project management work. But for the remaining few percents you need to act different. If you always look for an answer in procedures you got caught. Sorry.

Yes, unconventional actions are much easier to implement in small organizations where everything is less formalized. It is of course possible (yet rare) in big companies too, although in that case it is usually a function of people accountability, which is a function of company culture.

Friday, December 07, 2007

Avoiding Hiring Mistakes: Flow With Interview

You go there, to yet another interview with a potential developer. It’s eight one this week and it appears you’ll have to go through another dozen until you find someone who suits your team. Obviously you start with the list of standard question, but you should listen carefully to answers you get. Chances are good the interviewee will give you at least a couple of hacks you can exploit to push the discussion to different areas. Possibly these would be areas where you can find real value of the candidate or check several soft skills you’d like to know about.

It can be really anything. Often one of those hack-points I use is a question about the most interesting project candidate participated in. Sometimes in ends on discussing how the map in computer game should be prepared, sometimes we talk about challenges you face as an administrator of sport vortal and sometimes you discuss project management tricks which can be used when you face tough client on the other side.

There’s one more profit here. Besides of gathering the knowledge about the candidate you can learn something new.

Whole avoiding hiring mistakes series.

Monday, December 03, 2007

Culture of Innovativeness

Last week I attended a conference called Innovative Management. My friend commented “There can be nothing innovative on conference which has innovative word in its title.” I can’t say my expectations were much higher. Imagine people from big telecoms, big TV stations, big internet portals and big banks talking about innovation in their companies...

They will tell you about company culture which supports innovation. They will tell you they have to fail sometimes on their road to innovation. They will tell you about setting goals to people and letting them to find the way how those goals can be achieved. They will tell you how much time of their teams spend on innovation.

Bullshit.

I’ve seen there several of those companies live. I’ve worked or work with them. They’re our current or past customers. I’ve seen their teams. I’ve been working with them. They show nothing of above values their CTOs, CEOs and VPs are talking about. But they perfectly now how to play it safe. Procedures, ass-protectors, beaten paths. Creativity, risk and accepting failure (from time to time) aren’t on the list.

Top management from big companies is completely disconnected from people working in their companies. OK, they know how their firms should act to be innovative but do nothing to implement it down there in their organizations. I was shocked talking to people from fairly small company (a couple hundreds of people) which has exactly the same problem. I can bet they don’t know what problems their most creative people have. They don’t know about the rest of people problems either, but that’s another story.

To be honest I don’t know how big players deal with that problem. I’d love to see Steve Jobs not when he gives presentation prepared for weeks but during his everyday work. Google tries to flatten company’s structure and so far it works quite well. Microsoft became fat and lazy several years ago, so they’ve failed already. Anyway, I don’t know the recipe for big companies.

My recipe is a small company. Then that’s super-easy. You just know how your people work. You know if they’re playing safe or rather trying to improve their project or product. You co-decide how they’re promoted for creativity and how they’re punished for failures. Sure when you grow it’s harder and harder to keep an order and you need more formalism, but as far as you work in small company exploit your chances to be quicker and more flexible. Big players won’t catch you. They just can’t.