
Modern Approaches to Software Development
With examples from a large fintech
Slide contents
1. Modern Approaches to Software Development
With examples from a large fintech
2. Agenda
Modern development layers
Brute force: fit and failure
Design: requirements, domain, Clean Architecture
Storage, NoSQL, microservices
Delivery, infra, QA, security
3. 01. Brute-Force Development
When it works and when it breaks
4. Idea → Dev → Deploy
Linear cycle and pain
Business wants the neighbor's, only better
Requirements outrun code
Deploy stays an event
Few tests, high prod risk
5. When brute force fits
You don't always need Clean Architecture
Prototypes and MVPs, 2–4 weeks
RnD experiments with hypotheses
Automation scripts, one-off tasks, promo pages
Maintaining beats throwing it away
6. 02. Development with Design
When investments in design pay off
7. What design adds
Layers of meaning
Requirements gathering and formalization
Use cases
Domain model and language
Patterns and ADRs
8. Clean Architecture layers
Dependencies point inward
Entities — business objects and invariants
Use Cases — application business rules
Interface Adapters — controllers, presenters
Frameworks & Drivers + Dependency Rule
9. 03. Data Evolution
From file system to NoSQL and Data Mesh
10. A new class of tasks, a new store
11. NoSQL families
Engine per access pattern
Key-Value — fast lookup
Column-Family — wide rows
Document — flexible schema
Graph — relationships and traversals
12. 04. System Architecture
Monolith → SOA → Microservices
13. Monolith → microservices
Solutions create complexity
Monolith — simple deploy
SOA — heavy middleware
Microservices — harder ops
DDD sets service boundaries
14. 05. Delivery and Infrastructure
From FTP to DevOps and IaaC
15. From manual deploys to CI/CD
16. Infrastructure becomes a product
17. 06. Quality, Security, Data
What you can't skip
18. Shift-left + test pyramid
Build quality in
Unit tests — fast pyramid base
Integration / contract — service boundaries
E2E — few but critical scenarios
Production testing: canary, shadow, chaos
19. Security in CI
DevSecOps by design
SAST / DAST in CI
SCA — dependencies and CVEs
Secrets — Vault, KMS
Threat modeling + least privilege
20. Data becomes a product
From Warehouse to Data Mesh
Warehouse — structured, slow
Lake — schema-on-read
Lakehouse — hybrid
Mesh — self-serve product
21. The development loop only grows
Brute force belongs in prototypes
Design makes decisions explicit
Storage is chosen for the task
Delivery and infrastructure became code
Quality and security live inside the loop
every practice adds a step to the same loop
22. References
Architecture, data, DevOps
Clean Architecture + Microservices
Domain-Driven Design
Martin Kleppmann — Designing Data-Intensive Applications
Accelerate (DORA) + Data Mesh
23. Thank you!
polomodov.tech
All slides and links are in the Telegram channel
Alexander Polomodov, Technical Director & Fellow, T-Technologies
@book_cube