In the past two
decades of professional employment in the software industry, I had learnt a lot
from working on various projects (mostly software projects in teams). I hold three values and continued to invest in
these: Innovation, Collaboration, and Execution. Besides the project related values, I also hold high
regard for some personal values: Integrity, Honesty, and Initiative. Finally, I
like people values of: Trust, Respect, and Appreciation. Today I will discuss
just the values related to projects.
Briefly the project
values are:
-
Innovation
- bringing new ideas to life - both on problem solving and process engineering
to create product value. Innovation does not mean just a big bang effort like
creating the next big electronic gadget or building the next big software
development tool, though those are the things that I help with. Also there are
numerous occasions where small innovations are very useful as well.
- Collaboration
- working with people cross boundaries and cross-teams to solve problems.
Bringing ideas to life is a big task. Attempting to doing it alone is not easy
and sometimes can be just plain boring. Instead working with teams can be fun
and rewarding experience. And for this collaboration to work, it is important
to listen, communicate, clarify, and engage in joint sessions to solve
problems.
- Execution
- is the art and science of completing the project on time and on budget. No
idea has value unless it has been shaped and delivered for users to experience
it. Execution includes rigorous focus on nuts and bolts details to ensure all
parts of the project progress well. The 99% perspiration happens here: budget
and tracking schedules, fixing bugs iterations, testing, etc.
Most times, I value
the Innovation, Collaboration, and Execution on an even keel. On occasions, I
modify the order in which I want to exercise these values depending on the type
of project I am working on. Most times it is clarifying the teams I work with.
Though some people may find it hard to adjust when we change the project and
accordingly I update the values. In those occasions I resort to repeat
education within the team about the rationale.
For instance, over
the past year, I was
doing a startup project to
develop a novel set of ideas to market that had the potential to change
our business moving forward. The effort required a lot of focus on shaping the
new ideas and refining it deeply. For this project the order I used was:
Innovation, Collaboration, and Execution. Accordingly, we spent the first part
of project schedule prototyping and defining the architecture. I formed teams
and updated the teams 4 months later once we learnt more. I also found parts
that I can borrow and reuse from elsewhere - hence I applied the collaboration
aspects to discuss and leverage others solutions. The team also produced parts
that are to be used by others; we delivered collaboratively to others. About
half way thru the project I started emphasizing the Execution aspects more. Accordingly
I focused the team on reduced times to deploy and test our software, improve
customer feedback, fix bugs and reach zero bug bounce, etc. Net-net, the values
did not change, the order helped us focus the efforts.
Three years back, I
was asked to develop Windows Phone Application
Store. There were several app stores in the market by 2010. So novelty
was not high, but getting the store services out was definitely very important.
And there was strong possibility to create small innovations along the way. The
order I used was: Execution, Collaboration, and Innovation. Focusing on
execution to build up a high quality app store with rapid progress to get the
store for windows phones was critical. Certainly there were many teams to work
with to reuse technology from. The team adopted collaboration as next step.
Finally we found new ways to do things and new features (ex: build on Windows
Azure, optimize app package for faster load, Personalized search for apps,
etc.) with our focus on innovation. Net-net, I led three versions of the app store
development using the same value priorities and helped us get the app store up
and running well.
I had learnt that
having a few values that I repeatedly use helps me focus in my work and lead
the teams. I appreciate the guidance I received from many leaders I worked with
for guiding me to develop and refine my values.