I live a life of contribution, with integrity and empathy.
When I die, I want to be remembered by family, colleagues and friends as a trustworthy caring person who had a lasting positive impact on their lives and the lives of others.
I centre my life and every decision I make around the following principles:
- Integrity: I honour every promise I make, and I only do and say things I’d not be ashamed of if found out.
- Empathy: I deeply understand others and see the world through their eyes and emotions.
- Proactivity: I take full responsibility for my health, happiness, relationships and career.
- Courage: I say and do what I feel is right, with immense consideration for the other party, even when it’s risky to do so.
- Curiosity: I acknowledge that I am subjective and I learn constantly.
- Humility: I don’t let my ego control me or hurt others.
- Excellence: I do my very best in everything I commit to.
- Patience: I respond with smile when I can’t control the outcome.
- Forgiveness: I lend a hand to the fallen, even if they fell while kicking me.
I am a human, husband, dad, son, friend, principal consultant at Readify and infrequent blogger and presenter.
I started my career in the software and IT industry 20 years ago. I founded a company called Aram Systems to provide computer and networking services back in 97. I assembled computers, performed troubleshooting, setup networks and provided network administration for small companies. A couple of years later I joined a company as a software developer. Since then I have worked in three continents and with over 20 different teams and organisations wearing many different hats. I’ve been a programmer, consultant, tech lead, architect, BA, product manager, software delivery principal, agile and lean coach, executive advisor and CTO to name a few.
This is a curated list of some of the more popular posts on my blog.
- A journey to reinvent myself, and come up with my mission statement, what I stand for and want to accomplish in my life
- A simple and effective process for decision making and team building
- Be clear and explicit about your values and expectations
- Never judge a programmer by their commit history
- Dealing With Net Negative Producing Programmers : who are Net Negative Producing Programmers and how we can deal with them.
- It’s sometimes OK to write bad code
- Stop Discriminating: venting out a sore personal experience with racial discrimination.
- BDD To The Rescue: why BDD matters and how it can help.
- Definition of Done: Definition of Done I used in a web project which can be used as a reference.
- ORM Anti Pattern Series: a series of posts where I explain some of the common anti patterns I have come across when dealing with Object Relational Mapping (AKA ORM). The whole series has been very popular; but these are the three posts that stand out amongst all:
- Fiddler In Action tutorial part 1 and part 2: an extensive tutorial on using Fiddler web debugging proxy.
- Writing Maintainable UI Tests article on NetTuts: a few tips on how to write maintainable UI tests.
- Working with offline web applications: a tutorial about writing web applications with offline support along with a working sample.
- Continuous Integration and Delivery with TeamCity for GitHub projects
- BDDfy In Action series: an extensive tutorial for my open source BDD framework for .Net, BDDfy.
- Created BDDfy: the simplest to use and extend BDD framework for .Net.
- Created Humanizer: a .Net framework that meets all your .NET needs for manipulating and displaying strings, dates, times (inc. timespans) and quantities.
- Created and now contributing on Seleno: Seleno helps you write automated UI tests the RIGHT way!
- Co-founded TestStack: a collection of awesome and unique testing tools and frameworks.