A software craftsman who writes clean code and builds scalable systems.
Test-Driven Development
SOLID Principles
Single Responsibility Principle
Open-Closed Principle
Liskov Substitution Principle
Interface Segregation Principle
Dependency Inversion Principle
Component Principles
Component Cohesion Principle
Component Coupling
Agile Practices
Design Patterns
-----------
When we start working together, I like that we hop on a call to discuss the program/system requirements. I follow the sequence outlined in the following document:
https://docs.google.com -------------------
It is through this that we clear everything from the data dictionary to the design if the system needs one.
Work Terms
I will only work with you if we go through a strategy session, where we fill out a form similar to the one at www.wordpresscrafters.com/strategy
Strategy is important because:
1) It forces you to look at the design from your customers' perspective as opposed to your own aesthetics.
2) If forces you to only include design elements that contribute to the bottom line, and prevents you from having the "me too" syndrome, where you want features similar to what your competitors have, which may not increase the usability.
3) It reduces the number of revision requests you make because we make sure that you and I are on the same page from the get go.
The strategy session is a discovery session, and helps you to better understand yourself and your organization, your customers as well as why you exist, other than making money.
I insist that we do a strategy session because I would not like to become a recurrent expense to you. I want to feel that I am making a positive contribution to your business and helping you achieve your goals. That way, both you and I focus on the right goal from start to finish.
The strategy session has three sections:
1) A self-discovery for you and your company.
2) A look at examples of your customers and how to exceed their expectations.
3) Prioritization of design goals based on their short-, medium- and long-term impact on your business.