Home Blog Articles Books About Me Contact Me ThoughtWorks

About Martin Fowler

Last Significant Update: Apr 03

I'm an author, speaker, consultant and general loud-mouth on software development. I concentrate on designing enterprise software - looking at what makes a good design and what practices are needed to come up with good design. I've been a pioneer of object-oriented technology, refactoring, patterns, agile methodologies, domain modeling, the Unified Modeling Language (UML), and Extreme Programming.

I have the august sounding title of Chief Scientist at ThoughtWorks - a cutting edge system delivery and consulting firm. I've been here since March 2000 when I gave up my long (and rather successful) career as an independent consultant because I'd found a company that truly shares my values and principles about our profession.

I started working with software in the early 80's and in the mid 80's I started getting interested in the then new world of object-oriented development. I started to specialize in bringing objects to business information systems, first with a couple of companies and then as an independent consultant. In the early days this was using Smalltalk and C++, now it's Java, C# and Ruby. Every year I learn something new, but I also find that many of the lessons from the past still apply. This work has led me into taking a leading role in OO analysis and design, the UML, patterns, and agile development methodologies.

I've written five books on software development. Analysis Patterns are those repetitive ideas that I have come across in the business (domain) modeling that I have done during my career. As such they bring together the important areas of patterns and business object development. I also wrote UML Distilled a concise overview (under half an inch!) of the notation, semantics, and an iterative development process. It won a Software Development Productivity award in 1998 and is now available in a third edition. Refactoring describes how to alter the design of existing software in a controlled and rapid manner. I wrote Planning Extreme Programming with Kent Beck - it describes how to do the intensive planning that XP demands. My latest book is Patterns of Enterprise Application Architecture which describes some of the common patterns I've seen in developing enterprise applications. It won a Software Development Productivity award and a best Java book award from JavaWorld.com.

I speak at many international conferences on software development. I've served on program committees for OOPSLA, Software Development, UML World, XP 2001, and TOOLS. I gave closing keynotes at XP2000-2003, served as conference chair for XP2005 and for Agile Universe in 2001. I have been a columnist for Distributed Computing magazine, on the advisory board for Software Development magazine and IEEE Software where I also edited the design column for five years.

I became an independent consultant in 1991 and since then have seen a lot of companies as a consultant. While I've enjoyed a lot of this work, I'd never imagined joining any of them. This was partly because of the fact that I wanted the independence to do the writing that's become an important part of my life, but also because I hadn't come across an organization that was the sort of company I'd like to work for.

I started working with ThoughtWorks in the spring of 1999 and found a company whose attitude to people and customers fitted remarkably with my own views. They build the kind of mission critical business systems that I like to be involved in with the quality that I always aim for. But the key reason I joined them is because they really do believe that people are their biggest asset. I've seen many companies say that as a cliche, but not here. And that to me is essential because I believe the biggest impact on successful software development is motivated, talented developers. If you don't have that all the technology and methodology in the world can't help you. By hiring and keeping the best people, ThoughtWorks have the key to succeed in this business - and I do enjoy being around the best.

I live in Melrose, a pleasant suburb of Boston MA with my wife Cindy, a structural engineer, and we like to get out of doors in our spare time. Summer finds us cycling around New England and hiking wherever we can get to. Winter finds us cross-country skiing and hiking in New England's sometimes plentiful snow. I was born in Walsall, England and lived in London for a decade before coming to New England in 1994. I enjoy living in the US even though I miss the beer, the deep pointlessness of Cricket, and the English countryside.

Contact Information

Martin Fowler
Chief Scientist, ThoughtWorks
200 E. Randolph, 25th Floor, Chicago, IL 60601-6501, USA
mailto:fowler@acm.org, http://www.martinfowler.com

If you want to email me, please read my FAQ first.

Disclosures

As someone who writes a lot on the web it's wise for me to point out my financial and other interests so people have a sense of my biases.

I am an employee of ThoughtWorks and draw a salary from ThoughtWorks. I do have a voice in our business direction, but I don't have a strong day-to-day participation in it.

My other main source of income comes from my books, of which a few sell rather well.

Vendors do offer me their tools from time to time. Very rarely do I do any more than briefly play with them. Exceptions are JetBrains, from whom I use IntellJ Idea and Resharper very heavily; and Microsoft who have made me an MVP and thus give me a complementary MSDN subscription.

Revision History

Here's a list of the major updates to this paper



© Copyright Martin Fowler, all rights reserved