I help teams improve their software development processes and developers improve their software development practices. I’ve studied hundreds of successful teams and thousands of successful developers over three decades. I’ve identified many successful approaches for building software. I know the challenges development teams face and how to address them.

I Help Using

Assessments

Every project is unique and so are its challenges. Through interviews, questionnaires, and surveys I can provide you a detailed assessment of your software development process and/or project along with recommendations for improvement prioritized by the value you’ll receive right away. Assessments generally range from two days to two weeks. I also offer online and remote assessments.

I’ll help you

  • Articulate and refine your product definition
  • Evaluate your software development processes
  • Identify what’s working and what needs improvement
  • List areas where best practices can be applied
  • Quickly get a snapshot of your situation and where you stand
  • Explore solutions and alternate approaches
  • Gain a new perspective from an experienced outsider

Contact me for a free consultation.

Design Reviews

It can be useful to get an outside perspective. I’ve helped design dozens of successful products and services in a diverse range of industries. I have extensive experience working with design patterns and architecting a variety of systems, from embedded to the enterprise, and custom apps to operating systems.

I’ll help you
  • Identify patterns in your design to simplify and clarify code
  • Improve the testability of your designs to help automate validation
  • Examine the context and motivation around your design decisions
  • Suggest design alternatives to accommodate future changes
  • Clarify your domain model so it’s easier to understand and change
  • Cohesively instantiate objects to reduce coupling throughout the system
  • Implement alternative design solutions to resolve longstanding problems

Contact me for a free consultation.

Code Inspections

It’s easy to be overwhelmed by newly inherited legacy code. Legacy code can be difficult to work with so it can be helpful to have an extra set of eyes and a whole bunch of techniques for dealing with it. I can help review your software to identify areas of risk and create approaches for mitigation.

I’ll help you
  • Review, prioritize, and organize existing legacy code
  • Retrofit unit tests into legacy code so it’s safe to refactor
  • Identify types of technical debt in your code and how to fix it
  • Suggest alternative implementations for challenging code
  • Use techniques to clean up existing code for maintainability
  • Refactor code so it can readily accommodate new features
  • Gain techniques for efficiently refactoring legacy code

Contact me for a free consultation.

Ongoing Support

Improving software design and construction is my abiding passion. My goal is to help you become a more productive developer—and that doesn’t stop at the end of your training and coaching sessions. Your success is important to me, so I encourage graduates to call me during my weekly office hours with questions about the material covered in their training, or to share concerns and inquiries any time via e-mail. Additional support and mentoring options are also available.

I’ll help you
  • Reflect on new solutions to existing challenges
  • Reinforce what you’ve learned in class and apply it
  • Retrofit processes to be more efficient and effective
  • Review artifacts from sprint planning and design sessions
  • Periodically retrospect on your progress and challenges
  • Discuss next steps and how to proceed during a transition
  • Be available to answer questions as they come

Contact me for a free consultation.

Using a range of tools and techniques I work closely with your team to help them build the skills to resolve their issues on their own. My targeted training and coaching on technical practices give your developers the skills to rapidly build quality software.

Contact me for a free consultation.