I am a self-trained developer whose hobby turned into a career. I currently oversee the development of an education based SaaS reading platform that serves an ever growing number of books to hundreds of thousands of students around the world every day.
I'm a fan of the unix philosophy1, I don't wear flair, and I believe good individual character builds strong team culture and that is more important than any other consideration. I have many principles that inform how I approach what I do. Some examples are:
- Simpler is better
- Clear is better than clever
- Solve one problem at a time
- If the implementation is hard to explain it's probably a bad idea
- Maintenance is usually the most significant cost
- Assume it will break and you will have to fix it
- Autonomy and ownership are better than governance and control
- Waste not; want not
- Patterns are not rules
- Rules are not reasons
- Culture eats strategy
- Use the correct categories and measurements
- For what purpose is the system optimized?
- What if the system is working correctly?
- Don't take down a fence until you understand why it was built
- Data Dominates2