Maxim Danilov
Python/Django Senior Software Engineer, Solution Architect and Tech Speaker.
I start my career as a programmer specializing in embedded solutions in 1997, and grow to the role of Chief Technology Officer in 2023. Through many successful projects, I gained a robust understanding of various software development paradigms. After more than 10 years as a code mentor, I finally earned the title 'Super Mentor in Engineering' in December 2023.
https://github.com/pydantic/pydantic (issues V2)
https://github.com/lepture/authlib (bugs, issues, pr)
https://github.com/danilovmy/django-tof (owner)
https://github.com/tiangolo/fastapi (issues)
https://github.com/denoland/fresh (issues)
https://github.com/denoland/deno (issues)
https://github.com/sublimelsp/LSP-ruff (issues)
https://github.com/pauloxnet/uDjango(issues)
https://github.com/django/django (issues, bugs, speaker)
Sessions
Raw Django doesn't take the first places when comparing the performance of Python web frameworks. However, it can be pretty fast if we identify the bottlenecks and find ways to avoid them. Comparing performance and implementation complexity before and after gives us an understanding of which features should be implemented and what can be skipped.
A standard Django project involves working with multiple files and folders from the start. Let's see how the work with a Django project changes when we have only one file. This solution automatically transforms Django into a microservice-oriented async framework with "batteries included” philosophy.
An overcomplicated project increases development and maintenance time.
If a complete redesign is not possible, we can distribute the complexity across the existing codebase.
If AI assistants cannot help us with this task yet, we should discuss manual methods and tools that can be useful.
Using examples of real large projects, we will discuss that despite different business types, geographical and social contexts, these projects share similar architectural mistakes and how they can be redesigned.