2. Even a Small IT Project is Complicated
• Roles are specialized
• Resources are often
matrixed and over-
scheduled
• Plenty of potential for
bottlenecks
• Plenty of potential for
Tower of Babel problems
4. But Really Four Basic Roles, with Variations
• Team Leaders
• Project Manager
• VP Engineering
• Agile Coach
• Technical Leaders
• Architect
• CTO
• Tech Lead
• Voice of the Customer
• Product Owner
• Business Analyst
• Customer
• Implementer
• Developer
• DBA
• UI/UX
• QA/Test
• Designer
5. Team Leader vs. Tech Leader
Team Leader
• Focuses on people
• Focuses on Processes
• Responsible for coherence of
the team
• Helps team grow professionally
• Interrupt-Driven
• Always on the critical path
Tech Leader
• Focuses on Technology Choices
• Focuses on Constraints
• Responsible for coherence of the
product
• Helps team grow technically
• Batch driven
• Needs to take time to get things
right
6. Tech Leader vs. Implementer
Tech Leader
• Needs to understand that (s)he
is a leader, not just a lead dog
• Focuses on making the team
excellent
• In Agile environments, may run
the agile processes
• Knows when to say “no” and
when to say “yes”
Implementer
• Needs to respect the tech
leadership
• Needs to understand the
application domain
• Needs to understand that (s)he
is not the domain expert
• Needs permission to be
excellent
8. Specialists: Data-Layer Specialists
• DBA: Understands how to configure and tune databases
• SQL-heads: Specialists in database programming languages
• Queries
• Procedures
• Data Scientist: Understands how to “reason” with data
• Algorithms
• Predictives
• Learning
10. Designers vs. Developers
Designers
• 200,870 in U.S. (recent year)
• Median pay: $47,820
• Afraid of:
• Databases
• PCs
• Client Revisions
• Fixed-price billing
• Perl
Developers
• 1,336,300 in U.S.
• Median pay: $85,430
• Afraid of:
• Server crashes
• .EPS files
• Bosses who don’t code
• Carpal tunnel
11. SDLC Breeds Specialization
• QA and Test
• (later
today)
• Build,
Configure,
Manage
Change
• Source
control
• Change
control
• Deploy
12. Specialists: Build and Change Management
• Version control
• Check out/Check in
• Weekly builds->Daily
builds->Continuous
builds
• Bug tracking and other
systems of record
• Systems of real-time
communication
• Change management
13. Specialists: Operations and DevOps
• DevOps: merger of
development, QA, and
Operations into a continuous
process
• “Left shift”: operations move
into the development/QA cycle
• “Infrastructure as code”: formal
languages for describing servers,
configurations, etc.
• DevOps creates new kinds of
specialists