Proposed (14)
Liked (48)
Commented (148)
Naresh Jain
Score 846
Naresh Jain

Tech-Startup Founder & Agile/Lean Expert

Agile FAQs | Agile India

  India

Naresh Jain is an internationally recognized Technology & Product Development Expert. Over the last decade, he has helped streamline the product development practices at many Fortune 500 companies like Google, Amazon, HP, Siemens Medical, GE Energy, Schlumberger, EMC, CA Technologies, to name a few clients. These days, he is more focused on engineering excellence and product innovation. In a nutshell, hire him as a consultant/mentor, if your entire organization wants to move beyond the Agile and Lean mindset. Learn more about our expert services.

Naresh Jain's Startup Icons

Naresh is leading two tech-startups, which build tablet-based adaptive educational apps for kids, conference management softwaresocial-media search tool and a content curation and voting platform. His startups are trying to figure out the secret sauce for blending gamification and social learning using the latest gadgets.

As an independent consultant, Naresh worked with many fortune 500 software organizations and startups to deliver mission critical enterprise applications. Having played various roles of Founder, Agile Coach, Quality Evangelist, Technical Lead, Product Owner, Iteration Manager, Scrum Master, Developer, QA, Recruiter, Build Master, Mentor & Trainer, he is well equipped to help your entire organization to rapidly adapt Agile and Lean methods.

Agile Software Community of India

Naresh founded the Agile Software community of India, a registered non-profit society to evangelize Agile, Lean and other Light-weight Software Development methods in India. Naresh is responsible for conceptualizing, creating and organizing 50+ Software conferences worldwide.

Member since 1 year

Naresh Jain proposed:


Naresh Jain
Naresh Jain
Test Driving a jQuery Plugin
Naresh Jain
Naresh Jain

Over the past decade, eXtreme Programming practices like Test-Driven Development (TDD), Behavior Driven Developer (BDD), Refactoring and Continuous Integration have fundamentally changed software development processes and inherently how engineers work. Practitioners claim that it has helped them significantly improve their development speed, design quality and responsiveness to changing requirements. Software professionals across the board, from Internet startups to medical device companies to space research organizations, today have embraced these practices. But can these practices be applied to front-end development? Especially jQuery plugin development?

This demo will show how we can test drive a jQuery plugin with the help of various patterns, strategies, tools and techniques. Participants will understand how they can apply this approach for testing any jQuery code.

 

Duration: 90 mins
Level: Intermediate
»
jquery-plugin  
×
»
90_mins  
×
demonstration  
×
intermediate  
×

tdd  
×
jasmine  
×
3 weeks ago by Naresh Jain

Naresh Jain
Naresh Jain
Adaptive Change Cycle AND The Decline of Agile
Naresh Jain
Naresh Jain

Why do we see new process or methodology or movement every 10 years or so in the software industry? And why don't successful companies ride on their success forever? Naresh Jain uses the Adaptive Change Cycle (ACC) to explain the rationale behind it. Once you understand ACC, this talk will help you understand how to prepare yourself and your organisation to quickly move through the 4 stages of ACC: reorganise, exploit, conserve and release to constantly keep innovating. If you feel agile methods are stagnating and looking for what to expect next, this talk might give you some ideas.

Duration: 45 mins
Type:  Talk
Level: Intermediate

Naresh Jain
Naresh Jain
Sell Before you Build (MVP Hacks)
Naresh Jain
Naresh Jain

Before you write any code, make sure you have a failing test." This was a revolutionary idea, when it was first pitched in the late 90’s. Many successful entrepreneurs have been practicing a similar approach - "Before you build a product/service, make sure you have paying customers." In this talk, Naresh Jain shares his approach of finding effective MVPs to validate his Educational Product and why Agile Methods simply fail to do so. If you are interested in finding out how to maximise your validated learning for minimum investment, then this session is for you. Recently Naresh's article on this topic was published by InfoQ.

Duration: 60 mins
Type:  Case Study
Level: Intermediate
» »
60_mins  
×
case-study  
×
intermediate  
×

mvp  
×
vision  
×
hypothesis  
×
2 months ago by Naresh Jain

Naresh Jain
Naresh Jain
Techniques for Effectively Slicing User Stories
Naresh Jain
Naresh Jain

In order to achieve my goals, as a buyer of your product, I want awesome feature.

AT: make sure your users stories don't get in the way.

Users Stories, the tool teams use to break big ideas into small demonstrable deliverable, are easy to describe and challenging to write effectively. In this hands-on workshop you'll learn how to write great user stories that adhere to the INVEST principle. We'll learn various techniques to slice your stories using the vertical-slicing approach. We will discuss what elements should be included in the stories, what criteria you should keep in mind while slicing stories; why the size of your user story is important and how to make them smaller and efficient.

Duration: 90 mins
Type:  Tutorial
Level: Intermediate

Ashish Parkhi
Ashish Parkhi
Naresh Jain
Gamifying Agile Adoption - An Experiment
Ashish Parkhi
Ashish Parkhi
Naresh Jain

While having a chat with Naresh Jain, he suggested me to go through the Ted Talk – “Gaming can make a better world” by Jane McGonigal. I found the title very weird and was wondering how is that possible? After going through the talk though, I was amazed. I started wondering if I can use the gamification technique in Agile Adoption, in our Products, in Performance Management Systems, in Employee Engagement Programs?

Dhaval Dalal introduced me to Prof. Kevin Werbach’s definition of Gamification – “The use of game elements and game design techniques in non-game contexts.

For our 4th ShipIt Day, organized on 25th/26th Sept 2014 at IDeaS, I decided to explore the idea of using game elements and game design techniques in the context of Agile Adoption. The idea was to create a gaming system which will automatically collect data, i.e. without explicit user intervention,  from multiple sources like Jenkins, Rally and manually from individuals and offer Star’s for positive behavior and deduct Star’s otherwise.

The aim was to help the team get continuous visual feedback on how they are doing, adopt agile practices, visualize sense of accountability, visualize sense of achievement, drive positive behavior, create healthy competition, create a culture of appreciation, help performance tracking and create transparency.

 

Landing Page

User Profile

 

 

 Update - 

  1. Deducting points seems to be bothering the individuals. Now we are experimenting with getting rid of negative points and introducing short lived badeges instead e.g. "Build Breaker". 
  2. We have now added more badges to recognize individual efforts in various categories.
  3. Working on open sourcing the core app at https://github.com/IDeaSCo/rockstar
Duration: 45 mins
Type:  Case Study
Level: Intermediate
» »
45_mins  
×
case-study  
×
intermediate  
×

gamification  
×
motivation  
×
experiment  
×
4 months ago by Ashish Parkhi

Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain
eXtreme Programming for ETL and Data Analytics
Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain

Over the last decade, eXtreme Programming practices like User Stories, Evolutionary Design, Test-Driven Development (TDD), Behavior Driven Developer (BDD), Refactoring, Continuous Integration and Automation have fundamentally changed software development processes and inherently how engineers work.

Having experienced various benefits from XP practices on our J2EE stack, our team started to apply these practices to extract, transform, and load (ETL) and Data Analytics side of our product. Unfortunately, there is very little guidance available in this context, esp. for the SAS Platform. Right from finding the unit testing framework to structuring the code to designing our modules and setting up a Continuous Integration builds, our team had to figure out everything, the hard way.

Join us to understand the challenges we faced during this process and how we resolved these challenges.

Duration: 45 mins
Level: Intermediate
» »
45_mins  
×
intermediate  
×

sas  
×
sas-language  
×
statistic  
×
etl  
×
analytics  
×
procedural  
×
ci  
×
testability  
×
6 months ago by Prafulla Girgaonkar

Dhaval Dalal
Dhaval Dalal
Naresh Jain
The Tao of Transformation
Dhaval Dalal
Dhaval Dalal
Naresh Jain

"To know, is good. To live, is better. To be, that is perfect." - The Mother

During the Agile adoption, its a common complain that many team in many organizations get caught up in the ceremonies or mechanics of Agile and fail to understand/appreciate the true value and spirit of Agile. And because of this, the original intent of the Agile movement itself is lost. This is a serious issue!

This workshop will highlight, a well-proven approach to transformation (not adoption) and show the distinct steps in this journey that an individual or a collective goes through when learning anything new. Activities, serving as examples, in the workshop, will focus to show the journey - that is, how to begin with rituals, then gradually move to practices, arriving at principles and eventually internalizing the values. Witnessing this gradual process of transformation will help participants discover for themselves their current progression. We hope this will serve as a guiding light during their Agile journey.

Finally, we will leave the participants to ponder upon and discover for themselves their ideals in life and work as this is not only applicable to software development, but also to any discipline where humans are involved, including life itself.

Duration: 90 mins
Type:  Workshop
Level: Beginner
» »
90_mins  
×
workshop  
×
beginner  
×

rituals  
×
practices  
×
principles  
×
values  
×
ideals  
×
6 months ago by Dhaval Dalal

Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain
The Art of SQL Database Refactoring
Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain

"We've tested this feature thoroughly and it worked really well. But for some weird reason, it's really slow in production today...must be a network issue...or may be the server is having a bad day..."

Do you often hear these kinds of comments in your development team? Let us guess, your application is very data-centric and churns big blocks of data on every user request. And under the hood, your application is most probably heavily dependent on long/complex queries with joins, temp-tables, case-statements, nested queries, etc.

These SQL queries probably started-out very simple. But as your requirements evolved, iteration after iterations, the queries also grew in complexity. And most often, even if you test-drove your newer stories, the performance of these complex queries is not evident until you run them in production. 

Given that our requirements will evolve and so will our database, how do you deal with the above problems?

There are TWO essential parts to evolutionary database design:

  1. The art of refactoring your SQL queries.
  2. Figuring out the right balance of what processing is done in SQL on the DB sides and what is done on your service side in your App/Web Server.

Join us as we take a tour of how we refactored our complex, non-performant queries and overall DB without hurting our time-to-market.

Duration: 45 mins
Level: Intermediate
» »
45_mins  
×
intermediate  
×

query  
×
data  
×
java  
×
sql  
×
long-queries  
×
slow-queries  
×
talk  
×
refactoring  
×
6 months ago by Prafulla Girgaonkar

Sachin Natu
Sachin Natu
Naresh Jain
Inverting Test Pyramid - A First Hand Experience Report
Sachin Natu
Sachin Natu
Naresh Jain

Test automation is extremely crucial in adoption of an agile delivery. However, it can take one for a ride, if the approach is not correct. In this sensational, heart throbbing, experience report, we'll share our story of how we turned around an inefficient, expensive automation style to lean, efficient style. In addition to sharing a real-world example, we'll also share some of the key challenges we faced and how we solved them. If you are convinced about the Testing Pyramid, but are struggling to invert it, then this session is for you.

Business Impact:

  Earlier Defect Detection - Higher test coverage at Unit/Intermediate layers lead to earlier defect detection. Reduced number of issues found on higher test environments/Production. Reduced cost of defect fixing.

  Reduced maintenance cost - UI tests are fragile and costlier to maintain Vs backend tests. No of changes in services layer are comparatively less.

  Reduced test execution time - Backend tests are much faster. Almost 7-10  times faster than UI Tests - improved build certification time.

  Test feedbacks are naturally distributed across layers of application. Test feedbacks are more pin pointed/ granular.

Duration: 45 mins
Level: Intermediate
» »
45_mins  
×
intermediate  
×

testing  
×
test-pyramid  
×
7 months ago by Sachin Natu

Ashish Parkhi
Ashish Parkhi
Naresh Jain
Techniques to Speed Up your Build Pipeline for Faster Feedback.
Ashish Parkhi
Ashish Parkhi
Naresh Jain

I would like to share my experience and journey on how we brought down our Jenkins build pipeline time down from over 90 minutes to under 12 minutes. In the process, I would share specific techniques which helped and also some, which logically made sense, but actually did not help. If your team is trying to optimize their build times, then this session might give you some ideas on how to approach the problem.

Development Impact - For one of our build job, below graph shows how the number of builds in a day have increased over a period of time as the build time has reduced. Frequency of code check-in has increased; Wait time has reduced; failed test case faster to isolate and fix.

Business Impact - More builds leading to quicker feedback and faster story acceptance and less story spill over.

Duration: 45 mins
Level: Intermediate
»
agile-tools  
×
»
45_mins  
×
intermediate  
×

jenkins  
×
build  
×
fast-feedback  
×
ssd  
×
7 months ago by Ashish Parkhi


Naresh Jain liked:


Dhaval Dalal
Dhaval Dalal
The Tao of Transformation
Dhaval Dalal
Dhaval Dalal

"To know, is good. To live, is better. To be, that is perfect." - The Mother

During the Agile adoption, its a common complain that many team in many organizations get caught up in the ceremonies or mechanics of Agile and fail to understand/appreciate the true value and spirit of Agile. And because of this, the original intent of the Agile movement itself is lost. This is a serious issue!

This workshop will highlight, a well-proven approach to transformation (not adoption) and show the distinct steps in this journey that an individual or a collective goes through when learning anything new. Activities, serving as examples, in the workshop, will focus to show the journey - that is, how to begin with rituals, then gradually move to practices, arriving at principles and eventually internalizing the values. Witnessing this gradual process of transformation will help participants discover for themselves their current progression. We hope this will serve as a guiding light during their Agile journey.

Finally, we will leave the participants to ponder upon and discover for themselves their ideals in life and work as this is not only applicable to software development, but also to any discipline where humans are involved, including life itself.

Duration: 90 mins
Type:  Workshop
Level: Beginner
» »
90_mins  
×
workshop  
×
beginner  
×

rituals  
×
practices  
×
principles  
×
values  
×
ideals  
×
1 month ago by Dhaval Dalal

Scott González
Scott González
Building Up the Community
Scott González
Scott González

Over the past seven years, jQuery UI has identified and solved many common problems for web developers. Often times, the problems don't apply just to users of jQuery UI, or even jQuery Core. In these cases, we try to solve the problem in the best way for the largest audience, rather than creating an isolated solution within jQuery UI. We're able to do this by working with the community and bringing together various groups to collaborate on solutions. In this talk, I'll discuss how this concept is at the heart of the jQuery Foundation and explain some of the projects that have been born out of jQuery UI.

Duration: 45 mins
Type:  Talk
Level: Beginner
»
jquery-ui  
×
»
45_mins  
×
talk  
×
beginner  
×

community  
×
collaboration  
×
standards  
×
css  
×
1 month ago by Scott González

Aslak Hellesøy
Aslak Hellesøy
How BDD can save agile
Aslak Hellesøy
Aslak Hellesøy

As lead developer of Cucumber and author of The Cucumber Book, Aslak gets asked to consult with organisations who want to introduce Behaviour-Driven Development (BDD). Time after time, he meets teams who are trapped doing half-arsed agile. They do the easy, obvious, visible agile practices, and none of the powerful, hard-to-master, hard-to-see ones.

When these teams ask for help learning BDD, we get a chance to remind them how important conversations and collaboration are in software development. We teach them to write tests before they write code, as a way to explore and discover the hidden details of a requirement just before they dive in and start building it. This talk will make you wince with recognition, laugh with despair, and finally inspire you with stories of teams that have finally, after years of flaccid scrumming, discovered the true collaborative heart of agile software development. You’ll see patterns you recognise from your own teams, and gain insights about how to fix them.

Duration: 60 mins
Type:  Keynote
Level: Intermediate

Prasad Kunte
Prasad Kunte
Implementing Agile Engineering Practices in Legacy Codebases
Prasad Kunte
Prasad Kunte

Afraid of legacy code? Don't be!!!

Most successful product companies are confronted with the problem of legacy code.

What is a legacy code?

  • A code which is in production for several years.
  • A super-complex, hard to understand code base, written by different set of developers. 
  • Outdated Technology stack.

But the most hurting reality is:

Lack of confidence in the code due to zero or poor test coverage.

Due to this reality, developers are often scared to touch it. They have very little confidence that "their code change wouldn't break the existing application in production."

Recently at IDeaS, we came across such situation, where we needed to enhance one of our products containing legacy code. We started looking into the code and soon figured out that it was developed in 2007, hardly ever touched (& still working in production :)). The original team, which has worked on this product, could not be traced anymore.

As this product has expanded to attract new customers, we had to change it significantly in order to support new customer's specifications. We had to make sure that the product was backward compatible and supported the earlier specifications, while we enhance the new specification.

One simple option was to COPY PASTE every single method which needs to be modified and use an if-statement to decide which method to call. This certainly seems like an easy method, since the chances of breaking existing code is very little. 

Today we all know this is a BAD option!!!

Instead, our team decided to refactor the existing code to support plug-and-play approach for different specification. But before we started refactoring code, we had to build a safety net of tests around the existing code.

How do we put the safety net? Ideal way would be to implement the Test Pyramid first. But, that would have taken significant time to be ready with the pyramid before we start touching the legacy code. And obvious, we would have missed the business goals.

What do we do?

Instead of building the entire test pyramid, we decided to attack different layers of the test pyramid, one at a time. Along the way, we followed the following approach:

  1. Re-structuring the Project code-base
  2. Establishing a baseline database: After taking a dump from the production database, we cleared out surplus data from the DB and setup a seed database with automed scripts
  3. Creating/fixing the build script 
    1. Setting up an auto DB deploy tool and integrating it with build scripts
  4. Set up basic CI pipeline
  5. Write a few work-flow tests to capture the system's flow from user's point of view
    1. Find the inception point in the code from where we can exercise the code
    2. Restify the application at the inception point (one service at a time)
    3. Setup authorization for production and test environment
    4. Build minimal test-data set for different environment 
    5. Create a few work-flow tests via the inception point (Test itself should not be coupled with the underlying database or implementation level components)
  6. Write business logic acceptance test to capture various complicated business rules
  7. Test drive the new enhancement or bug fixes
  8. Every time we touch legacy code, refactor the code and improve test coverage at unit level

This really helped us test driven the new code and implement all the layers of the test pyramid.

If you've a similar situation, join us, as we share our experience on how to confront legacy code.

Duration: 45 mins
Type:  Case Study
Level: Intermediate
» »
45_mins  
×
case-study  
×
intermediate  
×

legacy-code  
×
test-pyramid  
×
refactoring  
×
2 months ago by Prasad Kunte

Sachin Natu
Sachin Natu
Death of Inspection: Reincarnation of the Testing Community
Sachin Natu
Sachin Natu

Adopting agile development practices and continuous delivery is becoming a norm in the software industry. Time to market and frequent releases have drastically reduced time available for regression testing. Inspection is considered wasteful. Faster feedback cycles during development is crucial. These have created lot of challenges for testing community, which traditionally relies on manual testing assisted by UI based test automation.

This is an experience report of transforming testing practices across organization, which decided to embrace Agile. Today our testers are not trying to find defects, instead they collaborate with product management and developers to prevent them in the first place. In fact, during the appraisal process, the defects found by them is ignored, instead we focus on how much time they are able to dedicate to collaboration and exploratory testing. The boundaries between developers and testers have faded away and today quality is whole team's responsibility.

We started with less than 20% of our testers with automation skills (mostly UI automation) and rest of them relying on manual testing. However, today, all our testers practice BDD. They have picked up Java & Groovy programming skills. They are able to contribute Workflow tests, Integration tests and Business Logic Acceptance Tests. Early collaboration and pairing is the norm. By the time developers are done with their tasks, all checks are already automated and hence we are able to deploy software every fortnight to production.

Are your testers finding it hard to make this transition to an Agile mindset? This session will give you some concrete ideas based on our transition at IDeaS.  

Duration: 60 mins
Type:  Case Study
Level: Intermediate

Ashish Parkhi
Ashish Parkhi
Techniques to Speed Up your Build Pipeline for Faster Feedback.
Ashish Parkhi
Ashish Parkhi

I would like to share my experience and journey on how we brought down our Jenkins build pipeline time down from over 90 minutes to under 12 minutes. In the process, I would share specific techniques which helped and also some, which logically made sense, but actually did not help. If your team is trying to optimize their build times, then this session might give you some ideas on how to approach the problem.

Development Impact - For one of our build job, below graph shows how the number of builds in a day have increased over a period of time as the build time has reduced. Frequency of code check-in has increased; Wait time has reduced; failed test case faster to isolate and fix.

Business Impact - More builds leading to quicker feedback and faster story acceptance and less story spill over.

Duration: 45 mins
Level: Intermediate
» »
45_mins  
×
intermediate  
×

jenkins  
×
build  
×
fast-feedback  
×
ssd  
×
3 months ago by Ashish Parkhi

Ashish Parkhi
Ashish Parkhi
Naresh Jain
Gamifying Agile Adoption - An Experiment
Ashish Parkhi
Ashish Parkhi
Naresh Jain

While having a chat with Naresh Jain, he suggested me to go through the Ted Talk – “Gaming can make a better world” by Jane McGonigal. I found the title very weird and was wondering how is that possible? After going through the talk though, I was amazed. I started wondering if I can use the gamification technique in Agile Adoption, in our Products, in Performance Management Systems, in Employee Engagement Programs?

Dhaval Dalal introduced me to Prof. Kevin Werbach’s definition of Gamification – “The use of game elements and game design techniques in non-game contexts.

For our 4th ShipIt Day, organized on 25th/26th Sept 2014 at IDeaS, I decided to explore the idea of using game elements and game design techniques in the context of Agile Adoption. The idea was to create a gaming system which will automatically collect data, i.e. without explicit user intervention,  from multiple sources like Jenkins, Rally and manually from individuals and offer Star’s for positive behavior and deduct Star’s otherwise.

The aim was to help the team get continuous visual feedback on how they are doing, adopt agile practices, visualize sense of accountability, visualize sense of achievement, drive positive behavior, create healthy competition, create a culture of appreciation, help performance tracking and create transparency.

 

Landing Page

User Profile

 

 

 Update - 

  1. Deducting points seems to be bothering the individuals. Now we are experimenting with getting rid of negative points and introducing short lived badeges instead e.g. "Build Breaker". 
  2. We have now added more badges to recognize individual efforts in various categories.
  3. Working on open sourcing the core app at https://github.com/IDeaSCo/rockstar
Duration: 45 mins
Type:  Case Study
Level: Intermediate
» »
45_mins  
×
case-study  
×
intermediate  
×

gamification  
×
motivation  
×
experiment  
×
4 months ago by Ashish Parkhi

Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain
eXtreme Programming for ETL and Data Analytics
Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain

Over the last decade, eXtreme Programming practices like User Stories, Evolutionary Design, Test-Driven Development (TDD), Behavior Driven Developer (BDD), Refactoring, Continuous Integration and Automation have fundamentally changed software development processes and inherently how engineers work.

Having experienced various benefits from XP practices on our J2EE stack, our team started to apply these practices to extract, transform, and load (ETL) and Data Analytics side of our product. Unfortunately, there is very little guidance available in this context, esp. for the SAS Platform. Right from finding the unit testing framework to structuring the code to designing our modules and setting up a Continuous Integration builds, our team had to figure out everything, the hard way.

Join us to understand the challenges we faced during this process and how we resolved these challenges.

Duration: 45 mins
Level: Intermediate
» »
45_mins  
×
intermediate  
×

sas  
×
sas-language  
×
statistic  
×
etl  
×
analytics  
×
procedural  
×
ci  
×
testability  
×
6 months ago by Prafulla Girgaonkar

Dhaval Dalal
Dhaval Dalal
Naresh Jain
The Tao of Transformation
Dhaval Dalal
Dhaval Dalal
Naresh Jain

"To know, is good. To live, is better. To be, that is perfect." - The Mother

During the Agile adoption, its a common complain that many team in many organizations get caught up in the ceremonies or mechanics of Agile and fail to understand/appreciate the true value and spirit of Agile. And because of this, the original intent of the Agile movement itself is lost. This is a serious issue!

This workshop will highlight, a well-proven approach to transformation (not adoption) and show the distinct steps in this journey that an individual or a collective goes through when learning anything new. Activities, serving as examples, in the workshop, will focus to show the journey - that is, how to begin with rituals, then gradually move to practices, arriving at principles and eventually internalizing the values. Witnessing this gradual process of transformation will help participants discover for themselves their current progression. We hope this will serve as a guiding light during their Agile journey.

Finally, we will leave the participants to ponder upon and discover for themselves their ideals in life and work as this is not only applicable to software development, but also to any discipline where humans are involved, including life itself.

Duration: 90 mins
Type:  Workshop
Level: Beginner
» »
90_mins  
×
workshop  
×
beginner  
×

rituals  
×
practices  
×
principles  
×
values  
×
ideals  
×
6 months ago by Dhaval Dalal

Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain
The Art of SQL Database Refactoring
Prafulla Girgaonkar
Prafulla Girgaonkar
Naresh Jain

"We've tested this feature thoroughly and it worked really well. But for some weird reason, it's really slow in production today...must be a network issue...or may be the server is having a bad day..."

Do you often hear these kinds of comments in your development team? Let us guess, your application is very data-centric and churns big blocks of data on every user request. And under the hood, your application is most probably heavily dependent on long/complex queries with joins, temp-tables, case-statements, nested queries, etc.

These SQL queries probably started-out very simple. But as your requirements evolved, iteration after iterations, the queries also grew in complexity. And most often, even if you test-drove your newer stories, the performance of these complex queries is not evident until you run them in production. 

Given that our requirements will evolve and so will our database, how do you deal with the above problems?

There are TWO essential parts to evolutionary database design:

  1. The art of refactoring your SQL queries.
  2. Figuring out the right balance of what processing is done in SQL on the DB sides and what is done on your service side in your App/Web Server.

Join us as we take a tour of how we refactored our complex, non-performant queries and overall DB without hurting our time-to-market.

Duration: 45 mins
Level: Intermediate
» »
45_mins  
×
intermediate  
×

query  
×
data  
×
java  
×
sql  
×
long-queries  
×
slow-queries  
×
talk  
×
refactoring  
×
6 months ago by Prafulla Girgaonkar


Naresh Jain commented:


Fabiola Eyholzer
Fabiola Eyholzer
Traditional HR has failed us! How to convince them to go Agile.
Fabiola Eyholzer
Fabiola Eyholzer

Do you remember the frustration that comes from trying to make traditional HR instruments like performance reviews work for your Agile teams? Do you feel HR is undermining your best efforts at collaborative leadership and is holding you back? Do you find yourself in a constant dispute with HR over people processes?

It is inevitable: HR must embrace Lean | Agile values and principles in order to engage and energize Agile talents. It’s time to show HR how key people challenges like retention, talent development, and performance management can be addressed successfully with Lean | Agile.

Join this session to

– gain valuable insights into the world of Human Resource Management

– recognize the impact of Agile HR practices

– discover why Agile needs HR and vice versa

– identify compelling arguments and tactics to convince HR to go Agile.    

Duration: 20 mins
Level: Advanced
» »
20_mins  
×
advanced  
×

1 week ago by Fabiola Eyholzer

Joseph Chee
Joseph Chee
When the rubber hits the road: Agile the Apparent “Fire Fighter”
Joseph Chee
Joseph Chee

As a process and efficiency Coach within MDO, my one heart-burn is when I hear, " We can't plan,  we're in a very very compressed schedule!!! ". This is when I realize that our process needs to cater to the situation rather than the other way round. 

When working in a compressed schedule, essentially, teams are in a fire fighting mode.  Any and every type of process is thrown out the window but are we throwing the baby out together with the bath water?  Is there a situation where we can put a process in place to facilitate the situation and in fact make it a less stressful condition to tolerate?  The answer is a resounding YES! 

As a product marches towards productization,  this is exactly what happened.  3 weeks to produce a piece of code that would be churning out customer samples what exactly what we needed to test out our Agile the fire fighter! This paper will detail out how we utilized Agile and its tools to help the CherryTrail Team respond to change, support customer needs and PRQ on time.

We utilized Agile and Lean Principles to dictate how we are going to operate.  This paper will dictate step by step.  Here are the principles I am referring to

. Systematically Eliminate Waste

–        See and Attack Waste.  Don’t Accommodate it

2. Build Quality In and Root-Cause Problems Immediately

–        Work to Prevent Defects, not just Detect Them

–        “Stop the Line” if you fail - Detect, Contain and Root Cause problems immediately

3. Reduce Cycle Times and Learning Cycles

–        Establish a Cadence and Limit Work to Capacity

–        Keep Plans Visible to Pull Work and make Knowledge Flow

–        Minimize the time from any problem event to the learning being captured

4. Learn, Innovate and Improve 

–        Use the scientific method via PDCA and LAMDA to Learn and Innovate Rapidly

–        “Go and See” for yourself – never assume

–        Create Usable Knowledge through Learn – Apply – Reflect

5. Make Data Driven Decisions

–        Build deep understanding before deciding by exploring multiple solutions, evaluating options thoroughly, and choosing the best for the system

–        Defer Commitment while you Learn First, Then Decide at the Last Responsible Moment

6. Engage Everyone

–        Respect our people by striving to systematically overcome obstacles

–        Tie work to business value and drive decision-making to the lowest responsible level

–        Create cross functional teams of responsible experts

–        Develop leaders with system expertise that teach what they know

7. Optimize the Entire System

–        Continuously improve cycle time, quality & customer satisfaction across entire value stream

–        Correct governance and incentive systems that encourage local optimization.

–        Focus on %Value Add Time instead of %Utilization of our resources 

In order to appreciate the above and work on a process that will be agreed upon we needed to :

  1. Recognize what the needs are.   DO DIRECT OBSERVATION.
  2. Understand the CULTURE of the Team.
    1. What were they doing before?
    2. What was the history of the team?  Did they just come out of other project with similar characteristics
    3. What are the hot buttons
    4. How to engage people
  3. VISUALS are important.
    1. How can we capitalize on visuals.  We’ll be sharing this.
    2. How do we show our progress and the effects that it gives
  4. Rally the MANAGEMENT
    1. The team needs to see the management involve.  No Lip Service
  5. We need a CADENCE.
  6. Create a conducive ENVIRONMENT
  7. SEE the Big Picture
  8. Manage the CHANGES 

The paper and presentation will further expand on the above 8 points as we journey through the last 6 months of the a product going into delivery.  This is not the normal mode of operation but based on signals that the program will be going thru same aggressive scheduling.  We will also be sharing those signals.

Duration: 45 mins
Type:  Talk
Level: Intermediate
» »
45_mins  
×
talk  
×
intermediate  
×

2 weeks ago by Joseph Chee

DEBASHIS BANERJEE
DEBASHIS BANERJEE
Agilists - Detect, Protect and Celebrate IP Created During Sprints
DEBASHIS BANERJEE
DEBASHIS BANERJEE

In the context of continuous and periodic delivery of same day, monthly and agile incremental delivery in both established and startup contexts there is a possibility of teams missing key elements of protecting their IP. Some simple elements such as making your work public prior to protecting it can cause loss of business. Additionally in short sprints filing IP may not be the most important focus within teams (especially in startups or smaller companies where budgets might also be a constraint). In this session it will demonstrate (a) Some key elements of how to keep IP in mind in Agile sprints (b) Some general best practices of how IP can be used as a bond/glue for teaming (c) Some process changes possible to ensure IP becomes a key element of agile delivery. These is based on experience of over 6 years submitting IP self and also having 6 people having approved IP, 20+ people encouraged to submit and 75+ submissions. (d) As a influencer will provide some best practices to Leaders and Product owners to encourage IP. (e) Additionally IP can be a great occassion for team building and bonding and a retention tool.  Note: The session will be generic and will not cover any specific IP process of any company but a general set of practices via experiences

Duration: 20 mins
Level: Intermediate
» »
20_mins  
×
intermediate  
×

business  
×
ip  
×
startup  
×
1 month ago by DEBASHIS BANERJEE

Lance Kind
Lance Kind
LEANing To Continuous Delivery
Lance Kind
Lance Kind

Transforming an organization's delivery model from quarterly or monthly releases to continuous delivery requires changes in requirements gathering, development, QA/ testing, and operations. Lean principles are a powerful guiding light into discovering what problems need to be addressed and how to get started. In this talk, I will describe how Lean principles can be applied to achieve a transformation to continuous delivery, and then provide a cycle model. At the end of the talk, is a workshop where the attendees will apply the Lean Principles to the cycle model and then analyze their own project for how to improve toward continuous delivery.

Everyone will learn more than one new way to examine their project.

Duration: 45 mins
Type:  Workshop
Level: Intermediate
» »
45_mins  
×
workshop  
×
intermediate  
×

1 month ago by Lance Kind

Sekhar Burra
Sekhar Burra
Maturing the Agile way-The Road map for Continuous improvement
Sekhar Burra
Sekhar Burra

Maturing the Agile Way contains 2 Agile maturity models, Qualitative and Quantitative model, deals with the concept of Organizational comparative Agile maturity index,  which quickly and reliably determine how agile an organization is compared to other organizations.

This company Which had been adopting Agile over several months, wanted to understand realized business benefits in terms of more reliable, shorter, milestone releases and improved quality (as measured by defect introduction rate). However, most often those with visibility across the full adoption effort many times noted that the adoption of Agile had been "uneven," and wanted to take the adoption effort "to the next level."  This in turn may give room for improved agility with many more areas in which additional business value could be added.

The goal of taking the agile maturity assessment was to better understand the areas on which the company should focus next. Based on the results of their assessment, the company may decide the need to emphasize improvements on few focus areas during particular time period.

This presentation also contains Scrum Master Maturity index, to create a learning plan for Scrum Master towards continuous improvement.

Duration: 60 mins
Level: Advanced

Sean Dunn
Sean Dunn
Building a Self-Sustaining Agile Organization: An Exercise in Leadership
Sean Dunn
Sean Dunn

A successful agile transformation is a challenge - so how to ensure that these gains will be resilient and sustain over time? How can one be sure that the agile values and principles will be passed on to future generations? What charactaristics differentiate the agile organization that is successful today and the one that will continue to be successful well into the future? 

This lecture leverages Sean's 13 years of military experience to explore how leaders deliberately build great self-sustaining organizations.  Leaning on first-hand case studies from coaching dozens of agile teams, learn about the leadership behaviours that build self-sustaining cultures, and those which fail to see beyond just the methologies. 

Duration: 60 mins
Type:  Talk
Level: Intermediate
1 month ago by Sean Dunn

Prasad
Prasad
Speed 2 Value.. helping large Enterprise IT to be in the game..
Prasad
Prasad

Technology has blurred the lines between the digital and traditional methods of dealing with a consumer of any Global Enterprises. The Business Process and IT is no more separate, in most of the industry verticals the Business is driven by IT.   Constant Innovation around IT has become the new normal to the Enterprises to meet rapidly changing consumer expectations and behavior dynamics.

More connected consumers, automated processes, and sophisticated analytics place unprecedented demands on IT functions. Many Enterprises are struggling to cope, and they seek to deliver on new demands by adding piecemeal elements to their existing operations. This is easier said than done. Reinventing the IT function at Global Enterprise requires far-reaching changes, from talent to infrastructure, tools, delivery models, partnership model.

This experience report  brings strategy of 2 speed IT, through which Infosys helped its Global top 10 clients to 'renew' its IT related to Digital & Mobility space using Agile as a key lever.

This session gives you experiences, practical on the ground challenges, stakeholder and vendor complexity and approach and journey towards Speed 2 value. Also I am pairing with Alok Uniyal who is senior leader at Infosys and a CIO coach who helped 50 plus clients to transform their IT organization in last 20 years.

Duration: 20 mins
Level: Advanced
» »
20_mins  
×
advanced  
×

agile  
×
lean  
×
2-speed-it  
×
2 months ago by Prasad

Nanda Lankalapalli
Nanda Lankalapalli
Happy Teams are key to successful agile transformation– Teams’ self-design
Nanda Lankalapalli
Nanda Lankalapalli

Agile Teams' self-design is very important (though not very common) exercise in a large-scale agile transformation. In teams’ self design, team members choose their own teams in a collaborative way. This concept here is that the teams will gel quickly and excel when they are self-designed.

In this session I am going to present my experience with such exercise. I facilitated at least 4 such sessions to help an organization as part of a large-scale transformation. The session is going to explain

  1. Benefits of Feature teams over Component teams
  2. Self-design of feature teams
  3. Pilot exercise of self-design of 2 feature teams.
  4. Large scale self-design of 4 product groups with 30 to 50 members per group.

<< Slides are not ready yet >>

Duration: 45 mins
Level: Advanced
1 month ago by Nanda Lankalapalli

Jeff Lopez-Stuit
Jeff Lopez-Stuit
Exploit Core Agile Practices at the Program Level
Jeff Lopez-Stuit
Jeff Lopez-Stuit

Core Agile practices establish visibility, remove impediments, and promote collaboration at the team level. Standup meetings, physical task boards, and focus on clearing impediments are well known practices to keep a team focused on the work, and establish a sense of flow towards frequent, tangible, and sustainable results.

What about an entire program, when a large number of teams are involved? How can a large organization exploit the same core practices when there is highly interdependent work, and when there may be hundreds of people involved? How can Scrum be used to improve delivery times, increase quality, and promote sustainable development at a program level? How the can practices provide executive leadership the visibility they need into program progress?

This workshop will introduce valuable, proven Scrum practices for large programs. Among the topics that will be discussed are:

  • What program management challenges are ripe for improvement through Agile practices?

  • The Program Impediment Board: Visible impediments, dependencies and milestones at a program level

  • The Program Stand-up: Lightweight activities to promote visibility, clear impediments and collaboration across the program

  • What does it look like when it’s working?: Improve delivery time, increase quality, and establish collaboration across the organization.

Duration: 45 mins
Type:  Workshop
Level: Intermediate
» »
45_mins  
×
workshop  
×
intermediate  
×

2 months ago by Jeff Lopez-Stuit

Ebin John Poovathany
Ebin John Poovathany
Enabling Transformation using Default Future
Ebin John Poovathany
Ebin John Poovathany

This talk is basically sharing my experience on how I have used the concept of Default Future to enable transformation. Default Future is a concept introduced by Dave Logan. (Reference book : Three Laws of Performance).

I learned the concept of Default Future when I did my gruaduation couse at Landmark Education. I have used this concept to enable transformation of teams.

We will start with the challenges faced in transformations. We will also look at some of the reasons for transformation failure.

Then we will introduce the concept of Default Future and how this can be applied in Agile transformations. This workshop will also pointing to how to create autonomous teams by enabling them with the right motivation.

I shall facilitate, how to apply the concept in your real life. The participant should be equipped to practice the concept after the session.

Duration: 45 mins
Type:  Workshop
Level: Intermediate
» »
45_mins  
×
workshop  
×
intermediate  
×

enabling  
×
  
×
3 months ago by Ebin John Poovathany