Software Craftsmanship in Financial services Barath ... · Consulting → Applying ... TDD, Test...
Transcript of Software Craftsmanship in Financial services Barath ... · Consulting → Applying ... TDD, Test...
Software Craftsmanship in Financial services
Barath Krishnan - SocGen
Developer empowerment to improve their own life at work and deliver value to customers
Craftsmanship
Developer empowerment to improve their own life at work and deliver value to customers
Craftsmanship
Clean code and safety netCollective code ownership over individual improvement
Minimize disasters in production
The Manifesto➔ Not only working software,
but also well-crafted software➔ Not only responding to change,
but also steadily adding value➔ Not only individuals and interactions,
but also a community of professionals➔ Not only customer collaboration,
but also productive partnerships
That is, in pursuit of the items on the left we have found the items on the right to be indispensable.
What lies beneath
Utility over artistry - Take me from point A to B
Surface view
Artistry is clean code solving business problems
Take me from point A to B, super fast and safe
What lies beneath
Utility over artistry - Take me from point A to B
Surface view
Artistry is clean code solving business problems
Take me from point A to B, super fast and safe
(WYSINWYG)
Training → Awareness
Coaching → Building rigour with practices
Consulting → Applying experience to specific problems
Infusing craftsmanship
Training → Awareness
Coaching → Building rigour with practices
Consulting → Applying experience to specific problems
Infusing craftsmanshipSafety Nets
TDD, Test Strategy (Test Pyramid), ATDD
Common Language
BDD
Flow Enhancement
CI, CD
Training → Awareness
Coaching → Building rigour with practices
Consulting → Applying experience to specific problems
Infusing craftsmanship
“Craftsmanship coaching”
Build (In house developed) → Burden of legacy
Buy and customize → Tailored vendor products
New Tech → Fast and Furious
Enterprise landscape mix
Build (In house developed) → Burden of legacy
Buy and customize → Tailored vendor products
New Tech → Fast and Furious
Enterprise landscape mix
Impacts the ability to become agile
Agility through continuous delivery, deployment and connect with business
Agility through continuous delivery, deployment and connect with business
Practices@Developer @team
Optimize WIP
Experiences➔ Regulatory reporting
How to integrate faster, reduce defects and achieve faster TTM
➔ Service ManagementEven with weekly production release, lead times are high
➔ Risk controls applicationCode maintainability for future expansion
Approach: Regulatory Reporting
TDD BDD and Beyond...
Team approaches with training need
Metrics
Definition
Team invites coach for grooming (3 Amigos)
Microservices Cloud Native applications TDD
TrainingPair
Programming
with devs
Test Strategy
Consulting
BDD
Training
Approach: Service Management
Team approaches with training need
Test
Pyramid
Exploration
Roadblock: No way for automated unit tests
Pairing to
create
automated
deployment
Gherkin
based testing
strategy
consulting
Lead time
distribution
analysis
Moving from
sprint-testing to
regression testing
???
Approach: Risk Control Application
Team approaches with training need
Enhance
quality of
tests
Problem: Test Coverage not successful
TDD
Training
Pairing with
developers for
code reviewIncrease Test
Coverage
Assess quality of
existing tests
Refactoring
workshops
Feedback by staff and users
- Created unit test cases for legacy product by pairing with coach
- Code safe to refactor now
- Finds out bugs at early stage
- Test coverage improvement over 50% in 9 months
- BDD created common language among the team members
- Visualization of lead time helped to see from customer’s perspective
- Elimination of waste by suggestion to create regression test suite instead of sprint-level tests
Quotes for illustration purposes only
Our Journey● Agile at scale● Agile Information
Systems● Cloud DevOps
People➔ Culture and
Mindset➔ Upskilling/
Reskilling➔ New job
definitions➔ Craftsmen
Our Journey● Agile at scale● Agile Information
Systems● Cloud DevOps
Lion Man of the Holhensein-StadelOldest known uncontested example of figurine art
35000 - 40000 years old
Ref: The book “Sapiens” and Wikipedia