Joseph W. Yoder is a founder and principal of The Refactory, Inc., a company focused on software architecture, design, implementation, consulting and mentoring on all facets of software development. Joseph is an internationally recognized leader in many facets of software development specifically with Agile Best Practices. Joe's work has included working with both large and small companies and working with startup organizations. Joe has many years of practical hands-on experience where he has conducted architecture and design reviews of enterprise applications and systems, reviewed the design and implementation of a various systems and frameworks, provided assessments and `detailed analysis of existing systems, assisted with framework and object-oriented development, designing and performing custom training and leading various successful Agile teams.
Joseph is an international speaker and pattern author, long-standing member of the ACM, and the President of The Hillside Group, a, a group dedicated to improving the quality of software development. Joseph specializes in Architecture, Analysis and Design, C#, Java, Smalltalk, Patterns, Agile Methods, Adaptable Systems, Refactoring, Reuse, and Frameworks. Joe is the author of many papers, including being an author of the Big Ball of Mud pattern, which illuminates many fallacies in the approach to software architecture. Joe currently resides in Urbana, Illinois.
Joseph evolved from the Software Architecture and Patterns group at the University of Illinois. Joe has worked on various projects during his career that has incorporated many technologies. These range from stand-alone to client-server applications, web applications, web services, cloud computing, microservices, service-oriented architecture, multi-tiered, various databases, object-oriented, frameworks, human-computer interaction, collaborative environments, and domain-specific visual-languages. In addition these projects have spanned many domains, including Medical Information Systems, Financial Systems, Ordering, Import, Invoicing, Print, Shipping, Warehouse Management, Manufacturing, Medical Examination, Statistical Analysis, Scenario Planning, Client-Server Relational Database System for keeping track of shared specifications in a multi-user environment, Telecommunications Billing System, and Business & Medical Decision Making.
More recently, Joe has been teaching Agile Methods such as XP and TDD, Design Patterns, Object Design, Refactoring, Clean Code, Being Agile at Qualities, and Testing in industrial settings. Additionally, Joe has been providing assessments and evaluations, consulting and mentoring people on the above-mentioned concepts, and assisting agile teams in successfully building and deploying various systems. This recent work has also included working strongly in Java and .NET environments deploying frameworks and Domain-Specific Languages for some of our clients. Joe also won the New Directions award with a colleague at Saturn 2015, given to the presentation that best describes innovative new approaches and thought leadership in the application of architecture-centric practices for our presentation QA to AQ: Shifting from Quality Assurance to Agile Quality.
Joe presents tutorials and talks, arranges workshops, and organizes leading technical conferences held throughout the world, including international conferences such as Agile, Agile Brazil, Agile Portugal, Encontro Ágil in Brazil, AOSD, CBSoft, JAOO, JDD, QCon, PLoP, AsianPLoP, SugarLoafPLoP in Brazil, OOPSLA, ECOOP, SATURN, and SPLASH. Joe thinks software is still too hard to change. He wants to do something about this and believes that with good practices, putting the ability to change software into the hands of the people with the knowledge to change it, and bringing the business side closer to the development process is a promising avenue to solve this problem.