creating the right environment for product development
DESCRIPTION
TRANSCRIPT
CREATING THE RIGHT ENVIRONMENT FOR
PRODUCT DEVELOPMENTAnand Kumar Keshavan
Product Development Specialist
Redesign the Hiring process
Make it very tough to get in Make sure that the world knows how difficult it is to get
in. Make getting selected a great achievement- a badge or trophy!
Make candidates do small projects Programmers must write code Designers must design Testers must test
Ensure that the candidates have the acceptance of peers Behavioural Technical
Candidates must go through at least 4-6 rounds of peer interviews and 2 direct supervisor interviews. No one else need to interview them for basic skills and fit.
Adopt a “No Jerk” policy
A JERK is defined as someone who insults, violates personal space, glares, indulges in unsolicited touching, insults , threatens, uses sarcasm, shames, snubs and humiliates people
HR department’s job is to identify jerks and veto them during the hiring process
The executive management’s responsibility to remove the ones that get through the hiring process.
Pay well, really well!
Good people are hard to find It is harder when experienced people
leave because of compensation. No amount of free lunches, t-shirts and
company picnics can replace a great compesation.
Hire half the number, pay double Hire the best, aim to be the best
paymaster!!
Create a great workplace Create private spaces for individual contributors. If
private offices are not possible, make cubicles as private as possible
Create a noise free atmosphere Ensure interruption- free sessions ( 2 sessions a day)
of approximately 3 hrs each. A culture that respects: “I am in the zone. Do not
disturb” Use the 1 hour in the morning and 1 hour in the
evening for sync ups, meetings, course corrections etc Have plenty of whiteboards all over the place. Have many projection screens/ big TVs for collaboration Access to good food and coffee ( need not be free) and
TV. Encourage teams to watch live sports !
Stop doing things that everyone else does
IP protection- it is highly unlikely that your product has any IP that will be stolen.
Stupid firewall policies- software industry contributors need fairly wide access to the internet
Dress codes, Formal Mondays, Casual Fridays etc. People know when to wear what!
Vision, Mission statements, quality policies – no one reads them
Culture and policies
Avoid policies as far as possible. especially this that inconvenience 95% of the people to discipline
5%. Discipline the 5% who abuse on a one-to-one basis
Stop monitoring people’s time Trust your people with timeoffs and work schedules Focus on creating peer pressure to ensure team members’
accountability to each other Inspire them to volunteer their discretionary time
Permit work from home- leave the teams to figure out how to manage.
Encourage community participation-- barcamps, seminars, user group meetings etc.
Encourage team dinners, movies – whatever. Set budget for the team and LET THEM figure out how they want to do with it.
Processes
Avoid standardized processes Let individual teams decided the workflows they
need to follow. Define clear, simple status reporting methods
( no more than once a week) and leave it at that. Daily or hourly status reports don’t speed up product development- they hinder the progress!
Don’t create compliance police; teams will follow what they need to follow to achieve their goals.
Create a mindset that does incremental rework to achieve perfection over a period of time.
Abolish appraisals
Don’t tweak or modify – ABOLISH it- at best they are useless, at worst they are toxic
Tailor incentive structures to team objectives – and be transparent about it. Ship a product on time and everyone gets a bonus or no one does! Software is a pure team sport.
Use the time and effort to identify JERKS and removing them.
At the same do not force people to find jerks- don’t resort to “ research has shown that 5% of all members of the workforce are jerks- therefore 5% of the people must be compulsorily marked as jerks”
If you can’t find JERKS then throw the biggest party that you can afford!
What does a “manager’ do then?
Management’s role needs to be redefined Managers to become people-focused vs. process focused.
One-on-one with individual contributors Identify impediments and remove them Really identify weaknesses- coach them on how to correct them Fix team dynamics-bruised egos, low motivation, gaps in skills Resolve conflicts Communicate corporate and product roadmap and
developments Executive management to be externally focused
Clarify direction of the products Course corrections in response to market developments Meet customers Create company and product brand Actively look for Jerks!!
Its quite simple.. Really.