Five Days Agile Development Practices Workshop

What's it About

Get a First-Hand Feel of Agile Practices

This workshop is targeted at development teams who want to start transitioning to Agile Software Development methods and want to get a first hand feel for what it means to be working on an eXtreme Programming team. In this week long workshop we’ll simulate a real world eXtreme Programming environment. Participants will get to experience the following practices in action

Working on a real eXtreme Programming project for a week will help to understand and experience the core fundamentals of Agile Software Development. Concepts like Self-Organized Teams, Adaptive Planning, Cross-functional Teams & Collaboration, Evolutionary Design, Eliminating Waste, etc will be clear.
Learning Outcomes

Key takeaways and practical knowledge

People assembling giant puzzle pieces on table.

At the end of this training the team will be able to:

Understand the thought process and the need for XP practices.

Identify poorly designed code by using our elaborate code smell vocabulary.

Learn various automated refactoring techniques and strategies to carefully clean the identified code smells.

Have hands-on experience in practices like TDD, CI and Pair Programming.

Have experience in authoring User Stories.

Have clarity about Collective Code Ownership, Informative work spaces, planning game and project retrospectives.

Course Outline

Introduction to eXtreme Programming

    Test Driven Development

    • Introduction to TDD
    • Test First Vs Test Last
    • TDD Rhythm: Red, Green, Refactor
    • Crucial Design Principles
    • TDD and Design
    • Avatars of TDD

    Refactoring and Evolutionary Design

    • Purpose of Refactoring
    • Common Code Smells
    • Refactoring Patterns
    • Using Automated Refactoring

    Continuous Integration

    • Why CI?
    • Principles,Strategies and Techniques
    • Setting up a CI server
    • Automated Testing
    • Applying CI to Large Projects

    Pair Programming

    • How to Pair?
    • Need for Pairing
    • Pairing Infrastructure
    • Pairing Styles

    User Stories

    • The Big Picture
    • Interaction Design with Low Fidelity Prototyping
    • Capture nonfunctional requirements as stories
    • Working with user proxies
    • Conducting a story-writing workshop
    • Planning with User Stories

    Planning Game

    Project Automation

    • Setting up an automated build
    • Creating automated unit, acceptance and UI tests
    • Setting up a Continuous Integration (CI) process
    • Setting up coding standards and adding code coverage or test coverage
    • Setting up an integrated project dashboard
    • Setting up a build promotion process and team wiki

    Collective Code Ownership

    Informative Workspace and information radiators

    Stand-up meetings and Dev Hurdles

    Project Retrospectives

Benefits

All of our courses offer following benefits:

  • Unlimited access to course materials, sample projects and code examples with relevant tools
  • Low participant-to-instructor ratio
  • Heavy focus on hands-on learning experience
  • Live demos and real-world examples
  • Interactive activities/simulations to help understand the essence and concepts
  • Open discussion and dynamic format
  • Customizable

Post training, if your team needs help, we’ll be happy to assist your team.

Team collaborating on project with sticky notes.
Training Details

Instruction Method, Audience & Prerequisites

Method of Instruction

Interactive Dialogues, Programming Exercises, Demos and Instructional Games

Transfer %

Knowledge: 50%, Skill-Building: 50%

Target Audience

Entire Development Team wanting to experience eXtreme Programming in Action.

Course Level

Beginner to Intermediate

Course Prerequisites

  • Working experience in the project
  • Highly Recommended: basic understanding of the life-cycle of software projects

Want to enroll or customize a training for your team?

Contact us to get started.

Training Details

Pricing

  • Trainer Fee: Rs. 1,70,000 (~2000 USD) per day
  • GST: Additional 18% GST applicable on all trainings delivered in India
  • Expenses: Travel, accommodation and other expenses to be paid by the company
  • No. of Participants: All our training have a cap of max 20 participants per training

Contact Details

If you are interested in any of the trainings listed here or interested in customizing these trainings to your needs, please contact us.

Timings

9:00 AM – 6:00PM
These trainings can also be conducted on a weekend if that works better for your team.

General Requirements

To ensure a successful workshop, we require the following facilities:
  • HDMI projector (1024x768 minimum) & Projector screen.
  • 1 White board & Dry erase markers.
  • Cluster seating with 5-6 people on each table.
  • 1 Flip chart with the stand and marker pens for each table.
  • Notepad and Pen for each participant.
  • Ample room for students in terms of room size and set up.
  • For Dev trainings: at least one powerful workstation between two programmers.
To ensure a successful workshop, we require the following facilities:
  • HDMI projector (1024x768 minimum) & Projector screen
  • 1 White board & Dry erase markers.
  • Cluster seating with 5-6 people on each table.
  • 1 Flip chart with the stand and marker pens for each table.
  • Notepad and Pen for each participant.
  • Ample room for students in terms of room size and set up.
  • For Dev trainings: at least one powerful workstation between two programmers

General Requirements

To ensure a successful workshop, we require the following facilities:

  • HDMI projector (1024×768 minimum) & Projector screen
  • 1 White board & Dry erase markers
  • Cluster seating with 5-6 people on each table
  • 1 Flip chart with the stand and marker pens for each table
  • Notepad and Pen for each participant
  • Ample room for students in terms of room size and set up
  • For Dev trainings: at least one powerful workstation between two programmers

Development Tools

Benefits

All of our courses offer following benefits:

  • Unlimited access to course materials, sample projects and code examples with relevant tools
  • Low participant-to-instructor ratio
  • Heavy focus on hands-on learning experience
  • Live demos and real-world examples
  • Interactive activities/simulations to help understand the essence and concepts
  • Open discussion and dynamic format
  • Customizable

Post training, if your team needs help, we’ll be happy to assist your team.

Team collaborating on project with sticky notes.

Learning Outcome

At the end of this training the team will be able to:

  • Understand the thought process and the need for XP practices
  • Identify poorly designed code by using our elaborate code smell vocabulary.
  • Learn various automated refactoring techniques and strategies to carefully clean the identified code smells.
  • Have hands-on experience in practices like TDD, CI and Pair Programming
  • Have experience in authoring User Stories
  • Have clarity about Collective Code Ownership, Informative work spaces, planning game and project retrospectives

Course Outline

Introduction to eXtreme Programming

Test Driven Development

  • Introduction to TDD
  • Test First Vs Test Last
  • TDD Rhythm: Red, Green, Refactor
  • Crucial Design Principles
  • TDD and Design
  • Avatars of TDD

Refactoring and Evolutionary Design

  • Purpose of Refactoring
  • Common Code Smells
  • Refactoring Patterns
  • Using Automated Refactoring

Continuous Integration

  • Why CI?
  • Principles,Strategies and Techniques
  • Setting up a CI server
  • Automated Testing
  • Applying CI to Large Projects

Pair Programming

  • How to Pair?
  • Need for Pairing
  • Pairing Infrastructure
  • Pairing Styles

User Stories

  • The Big Picture
  • Interaction Design with Low Fidelity Prototyping
  • Capture nonfunctional requirements as stories
  • Working with user proxies
  • Conducting a story-writing workshop
  • Planning with User Stories

Planning Game

Project Automation

  • Setting up an automated build
  • Creating automated unit, acceptance and UI tests
  • Setting up a Continuous Integration (CI) process
  • Setting up coding standards and adding code coverage or test coverage
  • Setting up an integrated project dashboard
  • Setting up a build promotion process and team wiki

Collective Code Ownership

Informative Workspace and information radiators

Stand-up meetings and Dev Hurdles

Project Retrospectives

Training Details

Method of Instruction

Interactive Dialogues, Programming Exercises, Demos and Instructional Games

Transfer %

Knowledge: 50%, Skill-Building: 50%

Target Audience

Entire Development Team wanting to experience eXtreme Programming in Action.

Course Level

Beginner to Intermediate

Course Prerequisites

  • Working experience in the project
  • Highly Recommended: basic understanding of the life-cycle of software projects

General Requirements

  • HDMI projector (1024×768 minimum) & Projector screen
  • 1 White board & Dry erase markers
  • Cluster seating with 5-6 people on each table
  • 1 Flip chart with the stand and marker pens for each table
  • Notepad and Pen for each participant
  • Ample room for students in terms of room size and set up
  • For Dev trainings: at least one powerful workstation between two programmers

Development Tools

C/C++

Ruby

PHP

Flex

What our Clients say

See how the trainings have benefited our clients.
"Inversion of Software Development", that's what Naresh gave me through his 5 days workshop at Amazon. He is one of the best mentors I encountered in my career.

The way he tries to explain TDD and Design principles with practical approaches, always challenging the concepts which we used to think were industry standards. Learning through his workshop, now coding is like blogging, drop dead simple, and you don't look back.

I hope we had more dojos like Naresh mentoring people in Indian Software Industries to let them know what real clean software development is all about. To sum up he instilled the idea - "Perfection isn't the goal, it's the baseline." about software development in me.
Rajat Talwar
Software Engineer II, Amazon
It's been 3 weeks since I had the opportunity to attend a 3-Day TDD workshop followed by a 3-Day Design Patterns workshop by Naresh Jain. Post the workshops; I was able to fully test drive a feature that is already in production.

I had many take-away from his workshops, but the most important ones were - 1. It gave me the confidence that with TDD you can come up with good designs, 2. Learnt refactoring techniques and IDE tricks, 3. Got a deeper understanding of design values, principles and patterns. 4. Identifying code smells (the codes that I was proud of, now all I see there is code smells :P). But thanks to Naresh I know how to make it right.
Chandan Kumar
Software Development Engineer, Amazon
I recently met Naresh Jain during Test Driven Development(TDD) training at my current organisation. He is very knowledgeable and also very effective as a trainer. His enthusiasm and confidence is a game-changer when it comes to motivating the workshop participants.

I've really benefited from his training and by applying TDD in my day-to-day work . It was a great experience and I wish, I could get a chance to work with him on a real project.
Lokesh Gaur
 Technical Lead,Samsung Research
Rarely have I met a trainer who was truly hands-on. The depth of knowledge and on-field experience of Naresh Jain is truly inspiring. His proficiency in agile techniques and TDD is bleeding edge.

We have benefited immensely in barely three days of TDD training with him. We wish he was on our team here in EMC2.
Vimal Kumar
Principal Software Engineer, EMC2
EMC logo with squared symbol
Recently I attended Naresh's workshop on Test Driven Development (TDD) at Amazon, Hyderabad. It was a great learning experience and an eye-opener in few cases. He is very involved with the Agile community and has worked with a lot of industry experts. That's the best part of getting trained by him. He is up-to-date with the latest trends and his skills are very relevant.

Naresh's in-depth knowledge and great attitude, fueled by his passion for technology makes him a great techie to work with. I had a great experience and would highly recommend him for training/coaching or even just to have good discussions.
Akshay Johri
Software Development Engineer, Amazon

Want to enroll or customize a training for your team?

Contact Us →

Explore our Trainings & Workshops