How to Engineer Yourself for Peak Performance

A Guest Post by Alik Levin

Why are some cars faster than others? Why do some remote controls switch channels faster than others? Why do some mobile phones dial faster than others? Why do some digital cameras take pictures faster than others?

The answer is simple – some products are engineered with high performance in mind and some are not.

Why are some people less productive then others? We are all “engineered” the same, aren’t we? Fortunately, people can change and continually improve. You are your life’s engineer.

I am a software performance engineer and I’ve adopted J.D. Meier’s Software Performance Frame for my professional life. I am amazed by how this framework maps perfectly to my personal life. Here are a few examples:

Caching

Keeping just enough information at hand is essential to be focused and productive. I manage simple lists of immediate action items with related information. Once done with an action item, it disappears from the list releasing room for more current action items. The trick is keeping the list fresh, not stale. The other trick is having it handy and easily accessible.

Communication

I’ve developed a communication diet. I use email as my primary communication channel, which helps me be mobile and removes the need to be connected to any communication device. Anybody can reach me anytime no matter where I am. If you send me an email, expect a reply within 24 hours. Usually it is much less. If you call my mobile expect to hear “My email is <<email goes here>>, send me an email and I will contact you in 24 hours or less”. This helps me manage action items too.

Concurrency

Few humans can do multiple things simultaneously. Maybe some can, but most of us handle things one-by-one. Once engaged with one thing, I lock on to it. Once completed, I unlock myself for the next thing in the pipeline. I think of myself as a pipeline that processes things one-by-one. That said, I do my best to make sure my calendar does not have overlapping activities in it.

Coupling / Cohesion

How much dependency do you have? How tightly are you coupled to your office, people, devices, or time? The less you are coupled, the less dependent you are and the more productive you will be. Batching related items for processing is a productive technique for me. For example, I batch all office work for Sunday, because I am in the office all day long. That is the principle of high cohesion.

Data Access

What data gets processed? Emails are processed daily and I stopped reading newspapers and listening to radio and TV news. I use more productive techniques like RSS and alerts.

How do you process data? How much time does it take you to find a document, an email, or a contact? Building solid habits for filing and accessing data will save you time.

Algorithms

My productivity habits are like algorithms. Simple algorithms for email processing, meeting management, time allocation, and goal setting.

Mechanical work + streamlined processing = saved time.

For example, I never go to meetings without clear goals and an agenda. During the meeting I stay focused on the agenda and ask others to stick to it. I take notes which become the meeting summary and read them aloud at the end of the meeting, setting each action item for each participant.

Exception Management

Expect problems. There will be exceptions. Anticipating problems reduces stress when they occur. That way it is faster to fix the problem and with less negative emotion. Negative emotion drains energy and productivity.

Resource Management

How do you lock and release your resources? When your resource is locked, it cannot be used by others. Time is a good example. Do you allocate and lock your time proactively for important activities? If not, chances are you will be juggling a multiple activities simultaneously which is not productive. Allocate your time proactively, and increase your focus which reduces errors.

State Management

I manage simple lists of my life projects – customers, family, finances, and few others. Each list item holds its current state. The trick is having it handy and keeping its state updated consistently. It is best if it all sits in one familiar place.

Finally ask yourself?

Am I getting connected to the Matrix?

Or Am I getting disconnected from It?

The Matrix Trailer

My name is Alik Levin and I work for one of the world’s largest software companies, with more to do than there are hours. I like trying out new techniques for self improvement and personal development. I adopt what works and share it on my blog at http://practicethis.com.

11 thoughts on “How to Engineer Yourself for Peak Performance”

  1. Life by design — I like it!

    Don’t forget to mention perf modeling with timebudgets and security modeling for dealing with calculated risk 😉

  2. Interesting!

    I’ve thought about a system that has the notions of interrupts. These are the most high priority things that you just jump to whenever a flag is raised. They are so important that you always handle them before you go back to what you were originally doing.

  3. @JD – Yeah! Life by test-driven design. Model, test, fail, fix, succeed. Iteratively. :)!!
    @Kelvin – There is such technique in software too. It has proven to be not very scalable, meaning when there are too many flags raised the system gets choked locking resources without releasing it. Imagine, you work on something – you are locked on it. Suddenly the flag raised, you need to complete another task – what do you do? Drop what you are doing and switch to the incoming task? That is bad algorithm. You get burned out on context switches – one of performance killers in software too. You may lose the state of the former task, and find yourself doing the same task once more. Are you unlimited on resources like time or energy for doing same thing twice? Better technique is job scheduling – you know or anticipate what should come into your pipeline and you allocate resources, time and energy, proactively. If you do not know what’s to come in – you model, allocating time buffers for such cases.
    @Ryan! Great to hear you liked it. Fantastic distillation of the key points!! You should read JD’s latest post – The Zen of Results – he uses quote from Bruce Lee that sounds very similar to what you’ve said “Absorb what is useful, reject what is useless, add what is specifically your own.”. It is here http://blogs.msdn.com/jmeier/archive/2008/01/30/the-zen-of-results.aspx

    Thanks for the feedback!!

  4. Good post Alik. I’ve also been adopting J.D. s methods, though I’m in my infancy. It’s clarified some of these methods further.

    I’m the artist type who’s been looking for a method that helps me be flexbile while still making more effective. I’ve used a number of different types of planners from other people and those that I’ve made up myself.

    The irony is that I’m anal-retentive in many ways. I’ve worked at organizing content for the last 10 years. Personally, I’ve moved all my bills and things online and have over 10,000 pages scanned into the computer to get rid of my information clutter.

    During this time I’ve found two things that are relevant to this post.
    1) that it’s easy to get lost in the inflexibility of a system. The simpler you can keep it, the more portable it is to other tools. The benefits of a simple system like J.Ds is that it’s highly portable to other mail products (not just outlook).

    2) J.D. concept of friction. The more friction you have in any area, the harder it is to overcome it, just like in physics. Friction is equal to
    perceived difficulty of the task
    x
    the number of times you need to perform it in a given time period

    Note the “perceived” part.
    a) This may be high at the start, but it gets easier as patterns become automatic.
    b) The perception is partially controlled by how easy it is to try a different method. For example, on the web, everything is a click away. If you have to travel someplace to start something, there may be as much friction to leave and try something else as there is to just complete the task where you are. The task in front of you can seem “easier” simply because you’ve decided to do it.
    c) Depending on your skills, some things are easier than others. For example, I’d rather fix a computer than cook something. My girlfriend is the other way around.

    Also note that something that has just a little bit of friction will seem very painful if you have to repeat it 20 times a day.

    How this relates to the post – Low friction methods can be learned and implemented at a lightening pace, overcoming perceived time savings from more complex systems.

  5. Rob, WOW, what a comment!
    I love “friction” notation too. It falls into my life architecture bucket under “pipeline management” category – http://practicethis.com/2008/02/05/life-architecture-for-personal-achievement/
    With regards to this post, friction I think can reduced by applying proper caching, algorithms, and data access techniques. Here example how I implement caching to reduce friction when coping with avalanches of daily tasks http://practicethis.com/2008/02/11/the-fast-and-the-peaceful/

    BTW, Rob, I liked your music samples very much!

  6. Alik,

    Very interesting stuff…I’m not familiar with J.D. Meir, but I love how you’ve incorporated his ideas and translated it into personal development!

    state management – sometimes tough for me to isolate one state from another. i.e. my finances spill over and affect my relationships, etc.

    resource management – i believe this. One’s attention can only be focused on one item at a time.

    exception management – goes with my thoughts on adversity: http://www.rx4life.info/what-is-adversity

    algorithms – working on setting schedules and plans – and following them.

    coupling/cohesion – i like this one. It reminds me of the paradox of life. The more tightly you hold onto something, the more likely you are to lose it.

    caching – i’ve always had a problem with this. no matter what system i use – the trick is to be consistent with any system.

    Good stuff,

    Tola

  7. Tola, great to hear you like it. Please meet JD – he responded first to the post.

    It amazes me again and again how software engineering techniques can be easily reverse engineered and applied in our own lives. I am both performance and security engineer. I use security engineering techniques in my life too. Take threat modeling, for example. I try to model the threats and their impacts on my life, just like with software. If the threat has low risk I leave it alone and move my energy to something more productive, If the threat has high risk I invest my best to mitigate it completely. This is part of my prioritization technique. It helps me prioritize my energy for high impact results over just completing another task.

    Makes sense?

  8. Hmmmm,very interesting…

    I’ve always believed that peak performance is determined by you choice. Success is not by chance, it’s by CHOICE! And you choose your life’s design for success.

    Cheers!
    Making The Best Better Team

Leave a Reply

Your email address will not be published. Required fields are marked *