The Jedi Academy is a supporting structure to provide increase graduates knowledge in being a professional software developer. Jedi academy will meet every two weeks to focus on a a fundamental area of development.
General topics to cover…
Initial fortnigtly topics include:
- Crafting Code - can they create a simple application without any assistance
- TDD - Unit Testing & Acceptance Testing
- Refactoring - Identifying smelly code, improving design, staying green
- Design principles - SOLID, Package Principles
- Object Oriented Design Patterns - Identify common patterns, apply patterns, aware of costs and benefits of patterns
- Pair & Mob Programming - Driver/Navigator, Working in a Mob
- Continous Delivery - Build Scripts, Build Servers, Feature Toggles
- Version Control - Getting Git from the console
- Agile Software Process (Scrum) - Iterations, Feedback Loops, Stand-ups, Retrospectives
- Agile Software Process (Kanban) - WIP Limits, Continous Delivery
- Estimating - Commit to task and timeframe, techniques for estimation
- Customer Collaboration - Working with customers, understanding our users
- Polyglot - Familiarity with variety of language constructs, OO vs. Functional, Static vs Dynamic
- Communication Skills - Engaging live presentation, clear writing
- Community Involvement - Blogs, User Groups, Conferences
- Collective Ownership - Cleaning the code, follow conventions
Each session is facilitated by different experts in the organization. Sessions can be up to 4 hours, with pre and post session work.
Things to read…
- The Pragmatic Programmer
- Clean Code by Robert Martin
- Software Craftmanship by Pete McBreen
- Refactoring by Martin Fowler
- eXtreme programming explained by Kent Beck
- Refactoring Legacy Code by Michael Feathers
Things to watch…
- Adopting continous delivery by Jezz Humble
- The rationale of Continous Delivery by Dave Farley
- Demanding Professionalism in Software Development by Uncle Bob
- Modern Agile by Joshua Keriesky at AgileNZ 2016
- Learning Velocity by Jeff Patton
- Integrated tests are a scam by J.B. Rainsberger
- Software Craftmanship - Sandro Macuso
- Seven ineffective coding habits of many programmers by Kevlin Henney at NDC2014
- The deep synergy between testability and good design by Michael Feathers at NDC2010
- Code that fits your brain by Adam Tornhill at NDC2014
- Clean Architecture and Design
- All the little things by Sandi Metz