SlideShare a Scribd company logo
How good is your software development team ?
By : Kinshuk Adhikary                                  Email : kinshuk_in@yahoo.com

Introduction : Most development managers would say "Oh, they are excellent". Or the
other extreme, "They are just bad, why can't I find the right people".

It is easy to establish if your team is really good or bad. Sometimes in the course of a
single day. You have to just put your antennae up and listen to the right signals.

[Note : The below is more applicable to Indian development teams, total sizes 50
developers or more. The size is important. For a total size of 20 developers the
dynamics are different. For sizes 5 or less, it is probably already an excellent team, no
question. In good software development, small is often beautiful.]

Microphones in the wash-rooms : Install them. You may hear this kind of sentences :-

(a) "Ugh!, there is no work to do in this place, man. Just login, sit around, google..."

(b) "No one knows how it works. The guys who made it left long ago..."

(c) "Why so many meetings ? These guys just waste our time..."

(d) "So many emails ! Half the times I can't even find the right one..."

And many others. Let us analyze each sentence carefully.

Sentence (a) : Do not blame the developers for "lack of work". It is the task of a lead or
manager to usefully manage those inevitable slack periods. Most such techniques
revolve around "creating interesting work for developers to get excited by". Not easy if
you are not a developer yourself :-)

Sentence (b) : It is important to find out "why those old guys left". If there is the slightest
hint of "they were bored doing nothing", the problem is back to (a). It may also be a
question of bad development practices, low documentation levels.

Sentence (c) : Physical meetings once in 3 days (or more) is probably fine. Typically, a
developer needs at least 1 hour to "warm up", get into concentration after a disturbance.
Managers need to closely monitor "how many disturbances". Effective work time is often
as low as 1 hour in many companies, due to a noisy environment, too many arbitrary
meetings. lack of role clarity. The key is in a word called "zone".

Sentence (d) : A clincher, really. It just indicates no formal development "process" at all.
Emails are useless as a collaboration tool. You will be better off using chat or jabber :-)

The army barracks concept : The acid test of your development process is this :

Is it like an army cantonment ? When a soldier is transferred from one location to
another, he does not have to ask people where this is, where the canteen or mess is,
where the pay office is. Almost by feel he knows where 80% of the stuff will be, and what
he is supposed to do next.

Much as I hate the misused word "process", I have to use it in this paragraph. What is a
process ? Simple, it is a set of repositories, preferably version managed, and a set of
tools, and an overall "process definition", an XML say, governing the workflow.

A process definition as a "Word document" is a complete bore to all developers. But a
process that is semi or fully automated, is heaven. In a good development workplace,
machines are supposed to do all the routine work. No people should be needed.

A good process takes care of the mundane, leaving the developer's mind free of "all that
nonsense". Focus then comes squarely on to the "deliverables". The deliverables are (i)
code (ii) design artifacts (iii) maybe, just maybe, some short Word documents. Important
note : Emails are NOT a deliverable. Communication is a need, not a production item.

Numbers can be obtained from a time-and-motion study of the person who is at the
"generation point" for all of these concrete outputs. If 80% of the developer's time is not
on these deliverables, then maybe the "process" is actually impeding real work, not
helping it along by making things smoother.


Unit tests : This is another area where jargon is amply applied, but very few teams do it
correctly. Units tests "show up" a development team's real strengths as nothing else
does. It is a very complex area, and its merits are understood properly only in stormy
weather. Also, it costs effort and time, so most teams just ignore it or do lip service.

Many development managers (yes, even in this day and age) think that "unit tests are
supposed to be written by a tester". Isn't that funny ?

And quite a few delegate the writing of unit tests "to the lowest rung newbie developer on
the team". Nothing can be worse. If such is the case, you are better of discontinuing unit
tests altogether.

Issue tracker : Many development managers give this answer "yes, we have just
started using JIRA". A bit of hesitation, and the words "just started" being a clue.

Issue trackers are a "maturizer" for a development team. Use it, and every member of
the team grows to a new level. From progressively a newbie developer, to a productive
developer, a team lead, a manager and so on. Neglect it, and everyone stays more or
less on the same level, irrespective of their paper roles and "talk talk".

While easy to install, effectively guiding and building good habits around task and issue
trackers is tricky, and most teams make a mess of it. They hide it of course.

How well you integrate your issue tracker with the rest of the team tools is important too.

I am aware that both the above points have several finer aspects. "Not for our kind of
development" is a common rebut. However, for every situation there are answers. Unit
testing and issue tracking are the cornerstone of any structured development process.
It is all about actually doing it a few times. After that, it is a no-brainer :-)

A whole list of other indicators (you can add your own too :-) :

Do you have daily builds ? Forget continuous builds, but just daily ones ?

Does your version repository talk to your issue tracker ?

Does buying a "50$ license" for some arbitrary unknown "developer's tool" over the
internet cause tremors in the upper management levels ?

Do your developer's often write "scripts" , templating stuff or others ?

Do you do "project management" on different tools than "issue management" ?

How do your testers communicate with your developers, and what profile of people
handle that interface ?

When you "standardize" the development environment, how widespread is the
dislocation to existing development efforts ?

Knowledge and skills : In a good development team, skills and knowledge grows.
Whether by outside acquisitions or by internal generation, this always is the higher level
measurement of a dev team.

This growth is crucial to meet increasing challenges and increasing complexity.

And if knowledge and skillsets are not growing, then numbers of people etc. are all false
indicators. Nothing else really matters.

Knowledge transfer is another much misused terminology. It never happens so
simplistically. Think of it more as "knowledge osmosis" happening across a semi-
permeable membrane, and you will be on the right track.

Architecture and design strengths : The qualities of design and architecture (yes, I
am not calling them skillsets) are the pillars of a dev team.

Good dev teams interact smoothly with their design folks and architects, which means,
the communication is seamless, the artifacts easily understood.

But most important is that developers understand what the designers and architects are
trying to do, and respond in code. Likewise, architects and design folk understand what
the developers can or cannot do, and do not live in some ivory tower, or come up with
too much specification or too little.

Conclusion : The effort of this article was to convey the message "it is easy to identify a
good team versus a bad team".

Individually, developer's by themselves are rarely good or bad, they can be misfits in a
given problem/solution area and good fits for others.
It is the whole "development team and process" that is often good or bad, irrespective of
any specific problem area.
Ad

More Related Content

What's hot (20)

Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...
Wojciech Seliga
 
Software Development Innovation in Practice - 33rd Degree 2014
Software Development Innovation in Practice - 33rd Degree 2014Software Development Innovation in Practice - 33rd Degree 2014
Software Development Innovation in Practice - 33rd Degree 2014
Wojciech Seliga
 
Optimizing for a faster user experience Pt 2: How-to.
Optimizing for a faster user experience Pt 2: How-to.Optimizing for a faster user experience Pt 2: How-to.
Optimizing for a faster user experience Pt 2: How-to.
James Christie
 
Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...
Wojciech Seliga
 
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
Wojciech Seliga
 
Devoxx Poland 2015: 5-10-15 years with Java
Devoxx Poland 2015: 5-10-15 years with Java Devoxx Poland 2015: 5-10-15 years with Java
Devoxx Poland 2015: 5-10-15 years with Java
Wojciech Seliga
 
UCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction designUCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction design
sdavis6b
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
Giovanni Asproni
 
Developer plantations - colonialism of XXI century (GeeCON 2017)
Developer plantations - colonialism of XXI century (GeeCON 2017)Developer plantations - colonialism of XXI century (GeeCON 2017)
Developer plantations - colonialism of XXI century (GeeCON 2017)
Wojciech Seliga
 
From dev to ops and beyond - getting it done
From dev to ops and beyond - getting it doneFrom dev to ops and beyond - getting it done
From dev to ops and beyond - getting it done
Edorian
 
[EN] Great software development quotes
[EN] Great software development quotes[EN] Great software development quotes
[EN] Great software development quotes
Eudris Cabrera
 
Confitura 2013 Software Developer Career Unplugged
Confitura 2013 Software Developer Career UnpluggedConfitura 2013 Software Developer Career Unplugged
Confitura 2013 Software Developer Career Unplugged
Wojciech Seliga
 
Working with Technical Debt
Working with Technical DebtWorking with Technical Debt
Working with Technical Debt
Steve Green
 
Creating an Online Community for User Research
Creating an Online Community for User ResearchCreating an Online Community for User Research
Creating an Online Community for User Research
Tom Vollaro
 
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
LizzyManz
 
Passionate Product Ownership
Passionate Product OwnershipPassionate Product Ownership
Passionate Product Ownership
Aaron Sanders
 
Why projects fail
Why projects failWhy projects fail
Why projects fail
Ponto GP
 
The final words about software estimation
The final words about software estimationThe final words about software estimation
The final words about software estimation
Alberto Brandolini
 
Software Developer Career Unplugged - GeeCon 2013
Software Developer Career Unplugged - GeeCon 2013Software Developer Career Unplugged - GeeCon 2013
Software Developer Career Unplugged - GeeCon 2013
Wojciech Seliga
 
The End of my Career
The End of my CareerThe End of my Career
The End of my Career
Johann-Peter Hartmann
 
Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...Ten lessons I painfully learnt while moving from software developer to entrep...
Ten lessons I painfully learnt while moving from software developer to entrep...
Wojciech Seliga
 
Software Development Innovation in Practice - 33rd Degree 2014
Software Development Innovation in Practice - 33rd Degree 2014Software Development Innovation in Practice - 33rd Degree 2014
Software Development Innovation in Practice - 33rd Degree 2014
Wojciech Seliga
 
Optimizing for a faster user experience Pt 2: How-to.
Optimizing for a faster user experience Pt 2: How-to.Optimizing for a faster user experience Pt 2: How-to.
Optimizing for a faster user experience Pt 2: How-to.
James Christie
 
Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...Ten lessons I painfully learnt while moving from software developer
to entrep...
Ten lessons I painfully learnt while moving from software developer
to entrep...
Wojciech Seliga
 
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
SFI 2017 Plantacje Programistów (Developers Plantations) - Colonialism in XXI...
Wojciech Seliga
 
Devoxx Poland 2015: 5-10-15 years with Java
Devoxx Poland 2015: 5-10-15 years with Java Devoxx Poland 2015: 5-10-15 years with Java
Devoxx Poland 2015: 5-10-15 years with Java
Wojciech Seliga
 
UCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction designUCD / IxD Introduction - User centric design, interaction design
UCD / IxD Introduction - User centric design, interaction design
sdavis6b
 
Creating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your SystemCreating An Incremental Architecture For Your System
Creating An Incremental Architecture For Your System
Giovanni Asproni
 
Developer plantations - colonialism of XXI century (GeeCON 2017)
Developer plantations - colonialism of XXI century (GeeCON 2017)Developer plantations - colonialism of XXI century (GeeCON 2017)
Developer plantations - colonialism of XXI century (GeeCON 2017)
Wojciech Seliga
 
From dev to ops and beyond - getting it done
From dev to ops and beyond - getting it doneFrom dev to ops and beyond - getting it done
From dev to ops and beyond - getting it done
Edorian
 
[EN] Great software development quotes
[EN] Great software development quotes[EN] Great software development quotes
[EN] Great software development quotes
Eudris Cabrera
 
Confitura 2013 Software Developer Career Unplugged
Confitura 2013 Software Developer Career UnpluggedConfitura 2013 Software Developer Career Unplugged
Confitura 2013 Software Developer Career Unplugged
Wojciech Seliga
 
Working with Technical Debt
Working with Technical DebtWorking with Technical Debt
Working with Technical Debt
Steve Green
 
Creating an Online Community for User Research
Creating an Online Community for User ResearchCreating an Online Community for User Research
Creating an Online Community for User Research
Tom Vollaro
 
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
“Don’t Repeat Yourself”: 4 Process Street Features to Keep Work DRY
LizzyManz
 
Passionate Product Ownership
Passionate Product OwnershipPassionate Product Ownership
Passionate Product Ownership
Aaron Sanders
 
Why projects fail
Why projects failWhy projects fail
Why projects fail
Ponto GP
 
The final words about software estimation
The final words about software estimationThe final words about software estimation
The final words about software estimation
Alberto Brandolini
 
Software Developer Career Unplugged - GeeCon 2013
Software Developer Career Unplugged - GeeCon 2013Software Developer Career Unplugged - GeeCon 2013
Software Developer Career Unplugged - GeeCon 2013
Wojciech Seliga
 

Similar to How good is your software development team ? (20)

Planning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsPlanning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teams
Christian Heilmann
 
AD - Developer communication and Technology
AD - Developer communication and TechnologyAD - Developer communication and Technology
AD - Developer communication and Technology
Enplore AB
 
Lean / Kanban
Lean / KanbanLean / Kanban
Lean / Kanban
Euler Sánchez
 
Pair Programming Presentation
Pair Programming PresentationPair Programming Presentation
Pair Programming Presentation
ThoughtWorks
 
Software engineering
Software engineeringSoftware engineering
Software engineering
sweetysweety8
 
hroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docxhroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docx
pooleavelina
 
Developer disciplines
Developer disciplinesDeveloper disciplines
Developer disciplines
Chris Howe-Jones
 
Resisting The Feature Creature
Resisting The Feature CreatureResisting The Feature Creature
Resisting The Feature Creature
Christian Heilmann
 
Rules of development (and everything else for what matters)
Rules of development (and everything else for what matters)Rules of development (and everything else for what matters)
Rules of development (and everything else for what matters)
Jorge López-Lago
 
Rethinking enterprise software - Codemotion 2014
Rethinking enterprise software - Codemotion 2014Rethinking enterprise software - Codemotion 2014
Rethinking enterprise software - Codemotion 2014
Alberto Brandolini
 
Rethinking Enterprise Software - Brandolini
Rethinking Enterprise Software - BrandoliniRethinking Enterprise Software - Brandolini
Rethinking Enterprise Software - Brandolini
Codemotion
 
User Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the UglyUser Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the Ugly
Joshua Randall
 
Automate the Application Deployment Process
Automate the Application Deployment ProcessAutomate the Application Deployment Process
Automate the Application Deployment Process
IBM
 
The Truth About Application Release and Deployment - Top 10 Myths Exposed
The Truth About Application Release and Deployment - Top 10 Myths ExposedThe Truth About Application Release and Deployment - Top 10 Myths Exposed
The Truth About Application Release and Deployment - Top 10 Myths Exposed
Casey Lucas
 
The truth about application release and deployment top 10 myths exposed
The truth about application release and deployment   top 10 myths exposedThe truth about application release and deployment   top 10 myths exposed
The truth about application release and deployment top 10 myths exposed
IBM Software India
 
Are Automated Debugging Techniques Actually Helping Programmers
Are Automated Debugging Techniques Actually Helping ProgrammersAre Automated Debugging Techniques Actually Helping Programmers
Are Automated Debugging Techniques Actually Helping Programmers
Chris Parnin
 
Agile Experience In Complex Projects
Agile Experience In Complex ProjectsAgile Experience In Complex Projects
Agile Experience In Complex Projects
Borys Lebeda
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2
Chad Udell
 
Distributed cat herding
Distributed cat herdingDistributed cat herding
Distributed cat herding
Jilles van Gurp
 
Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)
David Benjamin
 
Planning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teamsPlanning JavaScript and Ajax for larger teams
Planning JavaScript and Ajax for larger teams
Christian Heilmann
 
AD - Developer communication and Technology
AD - Developer communication and TechnologyAD - Developer communication and Technology
AD - Developer communication and Technology
Enplore AB
 
Pair Programming Presentation
Pair Programming PresentationPair Programming Presentation
Pair Programming Presentation
ThoughtWorks
 
Software engineering
Software engineeringSoftware engineering
Software engineering
sweetysweety8
 
hroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docxhroughout the fifty-odd years of software development, the ind.docx
hroughout the fifty-odd years of software development, the ind.docx
pooleavelina
 
Resisting The Feature Creature
Resisting The Feature CreatureResisting The Feature Creature
Resisting The Feature Creature
Christian Heilmann
 
Rules of development (and everything else for what matters)
Rules of development (and everything else for what matters)Rules of development (and everything else for what matters)
Rules of development (and everything else for what matters)
Jorge López-Lago
 
Rethinking enterprise software - Codemotion 2014
Rethinking enterprise software - Codemotion 2014Rethinking enterprise software - Codemotion 2014
Rethinking enterprise software - Codemotion 2014
Alberto Brandolini
 
Rethinking Enterprise Software - Brandolini
Rethinking Enterprise Software - BrandoliniRethinking Enterprise Software - Brandolini
Rethinking Enterprise Software - Brandolini
Codemotion
 
User Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the UglyUser Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the Ugly
Joshua Randall
 
Automate the Application Deployment Process
Automate the Application Deployment ProcessAutomate the Application Deployment Process
Automate the Application Deployment Process
IBM
 
The Truth About Application Release and Deployment - Top 10 Myths Exposed
The Truth About Application Release and Deployment - Top 10 Myths ExposedThe Truth About Application Release and Deployment - Top 10 Myths Exposed
The Truth About Application Release and Deployment - Top 10 Myths Exposed
Casey Lucas
 
The truth about application release and deployment top 10 myths exposed
The truth about application release and deployment   top 10 myths exposedThe truth about application release and deployment   top 10 myths exposed
The truth about application release and deployment top 10 myths exposed
IBM Software India
 
Are Automated Debugging Techniques Actually Helping Programmers
Are Automated Debugging Techniques Actually Helping ProgrammersAre Automated Debugging Techniques Actually Helping Programmers
Are Automated Debugging Techniques Actually Helping Programmers
Chris Parnin
 
Agile Experience In Complex Projects
Agile Experience In Complex ProjectsAgile Experience In Complex Projects
Agile Experience In Complex Projects
Borys Lebeda
 
Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2Designers are from Venus - Presentationas Given to CD2
Designers are from Venus - Presentationas Given to CD2
Chad Udell
 
Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)Agile Development Overview (with a bit about builds)
Agile Development Overview (with a bit about builds)
David Benjamin
 
Ad

Recently uploaded (20)

Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)Into The Box Conference Keynote Day 1 (ITB2025)
Into The Box Conference Keynote Day 1 (ITB2025)
Ortus Solutions, Corp
 
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptxDevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
DevOpsDays Atlanta 2025 - Building 10x Development Organizations.pptx
Justin Reock
 
Build Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For DevsBuild Your Own Copilot & Agents For Devs
Build Your Own Copilot & Agents For Devs
Brian McKeiver
 
Linux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdfLinux Professional Institute LPIC-1 Exam.pdf
Linux Professional Institute LPIC-1 Exam.pdf
RHCSA Guru
 
How analogue intelligence complements AI
How analogue intelligence complements AIHow analogue intelligence complements AI
How analogue intelligence complements AI
Paul Rowe
 
Rusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond SparkRusty Waters: Elevating Lakehouses Beyond Spark
Rusty Waters: Elevating Lakehouses Beyond Spark
carlyakerly1
 
Quantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur MorganQuantum Computing Quick Research Guide by Arthur Morgan
Quantum Computing Quick Research Guide by Arthur Morgan
Arthur Morgan
 
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Enhancing ICU Intelligence: How Our Functional Testing Enabled a Healthcare I...
Impelsys Inc.
 
Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025Splunk Security Update | Public Sector Summit Germany 2025
Splunk Security Update | Public Sector Summit Germany 2025
Splunk
 
Generative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in BusinessGenerative Artificial Intelligence (GenAI) in Business
Generative Artificial Intelligence (GenAI) in Business
Dr. Tathagat Varma
 
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Massive Power Outage Hits Spain, Portugal, and France: Causes, Impact, and On...
Aqusag Technologies
 
Mobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi ArabiaMobile App Development Company in Saudi Arabia
Mobile App Development Company in Saudi Arabia
Steve Jonas
 
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
#StandardsGoals for 2025: Standards & certification roundup - Tech Forum 2025
BookNet Canada
 
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
AI Changes Everything – Talk at Cardiff Metropolitan University, 29th April 2...
Alan Dix
 
Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.Greenhouse_Monitoring_Presentation.pptx.
Greenhouse_Monitoring_Presentation.pptx.
hpbmnnxrvb
 
HCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser EnvironmentsHCL Nomad Web – Best Practices and Managing Multiuser Environments
HCL Nomad Web – Best Practices and Managing Multiuser Environments
panagenda
 
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul Shares 5 Steps to Implement AI Agents for Maximum Business Efficien...
Noah Loul
 
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptxSpecial Meetup Edition - TDX Bengaluru Meetup #52.pptx
Special Meetup Edition - TDX Bengaluru Meetup #52.pptx
shyamraj55
 
How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?How Can I use the AI Hype in my Business Context?
How Can I use the AI Hype in my Business Context?
Daniel Lehner
 
Role of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered ManufacturingRole of Data Annotation Services in AI-Powered Manufacturing
Role of Data Annotation Services in AI-Powered Manufacturing
Andrew Leo
 
Ad

How good is your software development team ?

  • 1. How good is your software development team ? By : Kinshuk Adhikary Email : [email protected] Introduction : Most development managers would say "Oh, they are excellent". Or the other extreme, "They are just bad, why can't I find the right people". It is easy to establish if your team is really good or bad. Sometimes in the course of a single day. You have to just put your antennae up and listen to the right signals. [Note : The below is more applicable to Indian development teams, total sizes 50 developers or more. The size is important. For a total size of 20 developers the dynamics are different. For sizes 5 or less, it is probably already an excellent team, no question. In good software development, small is often beautiful.] Microphones in the wash-rooms : Install them. You may hear this kind of sentences :- (a) "Ugh!, there is no work to do in this place, man. Just login, sit around, google..." (b) "No one knows how it works. The guys who made it left long ago..." (c) "Why so many meetings ? These guys just waste our time..." (d) "So many emails ! Half the times I can't even find the right one..." And many others. Let us analyze each sentence carefully. Sentence (a) : Do not blame the developers for "lack of work". It is the task of a lead or manager to usefully manage those inevitable slack periods. Most such techniques revolve around "creating interesting work for developers to get excited by". Not easy if you are not a developer yourself :-) Sentence (b) : It is important to find out "why those old guys left". If there is the slightest hint of "they were bored doing nothing", the problem is back to (a). It may also be a question of bad development practices, low documentation levels. Sentence (c) : Physical meetings once in 3 days (or more) is probably fine. Typically, a developer needs at least 1 hour to "warm up", get into concentration after a disturbance. Managers need to closely monitor "how many disturbances". Effective work time is often as low as 1 hour in many companies, due to a noisy environment, too many arbitrary meetings. lack of role clarity. The key is in a word called "zone". Sentence (d) : A clincher, really. It just indicates no formal development "process" at all. Emails are useless as a collaboration tool. You will be better off using chat or jabber :-) The army barracks concept : The acid test of your development process is this : Is it like an army cantonment ? When a soldier is transferred from one location to another, he does not have to ask people where this is, where the canteen or mess is,
  • 2. where the pay office is. Almost by feel he knows where 80% of the stuff will be, and what he is supposed to do next. Much as I hate the misused word "process", I have to use it in this paragraph. What is a process ? Simple, it is a set of repositories, preferably version managed, and a set of tools, and an overall "process definition", an XML say, governing the workflow. A process definition as a "Word document" is a complete bore to all developers. But a process that is semi or fully automated, is heaven. In a good development workplace, machines are supposed to do all the routine work. No people should be needed. A good process takes care of the mundane, leaving the developer's mind free of "all that nonsense". Focus then comes squarely on to the "deliverables". The deliverables are (i) code (ii) design artifacts (iii) maybe, just maybe, some short Word documents. Important note : Emails are NOT a deliverable. Communication is a need, not a production item. Numbers can be obtained from a time-and-motion study of the person who is at the "generation point" for all of these concrete outputs. If 80% of the developer's time is not on these deliverables, then maybe the "process" is actually impeding real work, not helping it along by making things smoother. Unit tests : This is another area where jargon is amply applied, but very few teams do it correctly. Units tests "show up" a development team's real strengths as nothing else does. It is a very complex area, and its merits are understood properly only in stormy weather. Also, it costs effort and time, so most teams just ignore it or do lip service. Many development managers (yes, even in this day and age) think that "unit tests are supposed to be written by a tester". Isn't that funny ? And quite a few delegate the writing of unit tests "to the lowest rung newbie developer on the team". Nothing can be worse. If such is the case, you are better of discontinuing unit tests altogether. Issue tracker : Many development managers give this answer "yes, we have just started using JIRA". A bit of hesitation, and the words "just started" being a clue. Issue trackers are a "maturizer" for a development team. Use it, and every member of the team grows to a new level. From progressively a newbie developer, to a productive developer, a team lead, a manager and so on. Neglect it, and everyone stays more or less on the same level, irrespective of their paper roles and "talk talk". While easy to install, effectively guiding and building good habits around task and issue trackers is tricky, and most teams make a mess of it. They hide it of course. How well you integrate your issue tracker with the rest of the team tools is important too. I am aware that both the above points have several finer aspects. "Not for our kind of development" is a common rebut. However, for every situation there are answers. Unit testing and issue tracking are the cornerstone of any structured development process.
  • 3. It is all about actually doing it a few times. After that, it is a no-brainer :-) A whole list of other indicators (you can add your own too :-) : Do you have daily builds ? Forget continuous builds, but just daily ones ? Does your version repository talk to your issue tracker ? Does buying a "50$ license" for some arbitrary unknown "developer's tool" over the internet cause tremors in the upper management levels ? Do your developer's often write "scripts" , templating stuff or others ? Do you do "project management" on different tools than "issue management" ? How do your testers communicate with your developers, and what profile of people handle that interface ? When you "standardize" the development environment, how widespread is the dislocation to existing development efforts ? Knowledge and skills : In a good development team, skills and knowledge grows. Whether by outside acquisitions or by internal generation, this always is the higher level measurement of a dev team. This growth is crucial to meet increasing challenges and increasing complexity. And if knowledge and skillsets are not growing, then numbers of people etc. are all false indicators. Nothing else really matters. Knowledge transfer is another much misused terminology. It never happens so simplistically. Think of it more as "knowledge osmosis" happening across a semi- permeable membrane, and you will be on the right track. Architecture and design strengths : The qualities of design and architecture (yes, I am not calling them skillsets) are the pillars of a dev team. Good dev teams interact smoothly with their design folks and architects, which means, the communication is seamless, the artifacts easily understood. But most important is that developers understand what the designers and architects are trying to do, and respond in code. Likewise, architects and design folk understand what the developers can or cannot do, and do not live in some ivory tower, or come up with too much specification or too little. Conclusion : The effort of this article was to convey the message "it is easy to identify a good team versus a bad team". Individually, developer's by themselves are rarely good or bad, they can be misfits in a given problem/solution area and good fits for others.
  • 4. It is the whole "development team and process" that is often good or bad, irrespective of any specific problem area.