Federico Ramallo
Apr 29, 2024
Do We Really Need a Hero to Develop Great Software?
Federico Ramallo
Apr 29, 2024
Do We Really Need a Hero to Develop Great Software?
Federico Ramallo
Apr 29, 2024
Do We Really Need a Hero to Develop Great Software?
Federico Ramallo
Apr 29, 2024
Do We Really Need a Hero to Develop Great Software?
Federico Ramallo
Apr 29, 2024
Do We Really Need a Hero to Develop Great Software?
Do We Really Need a Hero to Develop Great Software?
Dejan Milicic's talk at Developer Week 2024, focused on the complexities often found in software architecture and the myth of requiring "hero developers" to manage such systems.
Miličić challenges the current trend of over-engineering applications with layers of buzzword-heavy technology stacks, arguing that most business applications, which essentially perform simple CRUD operations, have been unnecessarily complicated.
He points out that the drive to include every modern technology and architectural pattern has often led to systems that are optimized more for developers' resumes than for delivering value to users.
Miličić emphasizes the importance of simplicity in design, drawing attention to the fact that even with limited hardware, like the Raspberry Pi, it's possible to achieve impressive performance metrics that suffice for the majority of business needs. He illustrates this with examples showing how a Raspberry Pi can handle a significant number of concurrent requests with sub-200-millisecond responses, challenging the notion that more complex and resource-intensive setups are always necessary.
Through the talk, Miličić advocates for a return to basic principles, such as focusing on solving real-world problems and delivering value, rather than getting caught up in the latest tech trends. He underscores the risks associated with relying on "superhero" developers who are rare, costly, and prone to burnout, suggesting instead that applications should be built in such a way that they can be easily managed and extended by ordinary developers.
The core message is to simplify the architecture to the essentials needed for the application to function efficiently, thereby making it easier to onboard new developers, reduce the risk of burnout, and ultimately, create software that better serves its intended purpose without the need for heroic efforts.
Have you encountered similar challenges in your projects?
How do you balance the inclusion of new technologies with the need for simplicity and maintainability?
Do We Really Need a Hero to Develop Great Software?
Dejan Milicic's talk at Developer Week 2024, focused on the complexities often found in software architecture and the myth of requiring "hero developers" to manage such systems.
Miličić challenges the current trend of over-engineering applications with layers of buzzword-heavy technology stacks, arguing that most business applications, which essentially perform simple CRUD operations, have been unnecessarily complicated.
He points out that the drive to include every modern technology and architectural pattern has often led to systems that are optimized more for developers' resumes than for delivering value to users.
Miličić emphasizes the importance of simplicity in design, drawing attention to the fact that even with limited hardware, like the Raspberry Pi, it's possible to achieve impressive performance metrics that suffice for the majority of business needs. He illustrates this with examples showing how a Raspberry Pi can handle a significant number of concurrent requests with sub-200-millisecond responses, challenging the notion that more complex and resource-intensive setups are always necessary.
Through the talk, Miličić advocates for a return to basic principles, such as focusing on solving real-world problems and delivering value, rather than getting caught up in the latest tech trends. He underscores the risks associated with relying on "superhero" developers who are rare, costly, and prone to burnout, suggesting instead that applications should be built in such a way that they can be easily managed and extended by ordinary developers.
The core message is to simplify the architecture to the essentials needed for the application to function efficiently, thereby making it easier to onboard new developers, reduce the risk of burnout, and ultimately, create software that better serves its intended purpose without the need for heroic efforts.
Have you encountered similar challenges in your projects?
How do you balance the inclusion of new technologies with the need for simplicity and maintainability?
Do We Really Need a Hero to Develop Great Software?
Dejan Milicic's talk at Developer Week 2024, focused on the complexities often found in software architecture and the myth of requiring "hero developers" to manage such systems.
Miličić challenges the current trend of over-engineering applications with layers of buzzword-heavy technology stacks, arguing that most business applications, which essentially perform simple CRUD operations, have been unnecessarily complicated.
He points out that the drive to include every modern technology and architectural pattern has often led to systems that are optimized more for developers' resumes than for delivering value to users.
Miličić emphasizes the importance of simplicity in design, drawing attention to the fact that even with limited hardware, like the Raspberry Pi, it's possible to achieve impressive performance metrics that suffice for the majority of business needs. He illustrates this with examples showing how a Raspberry Pi can handle a significant number of concurrent requests with sub-200-millisecond responses, challenging the notion that more complex and resource-intensive setups are always necessary.
Through the talk, Miličić advocates for a return to basic principles, such as focusing on solving real-world problems and delivering value, rather than getting caught up in the latest tech trends. He underscores the risks associated with relying on "superhero" developers who are rare, costly, and prone to burnout, suggesting instead that applications should be built in such a way that they can be easily managed and extended by ordinary developers.
The core message is to simplify the architecture to the essentials needed for the application to function efficiently, thereby making it easier to onboard new developers, reduce the risk of burnout, and ultimately, create software that better serves its intended purpose without the need for heroic efforts.
Have you encountered similar challenges in your projects?
How do you balance the inclusion of new technologies with the need for simplicity and maintainability?
Do We Really Need a Hero to Develop Great Software?
Dejan Milicic's talk at Developer Week 2024, focused on the complexities often found in software architecture and the myth of requiring "hero developers" to manage such systems.
Miličić challenges the current trend of over-engineering applications with layers of buzzword-heavy technology stacks, arguing that most business applications, which essentially perform simple CRUD operations, have been unnecessarily complicated.
He points out that the drive to include every modern technology and architectural pattern has often led to systems that are optimized more for developers' resumes than for delivering value to users.
Miličić emphasizes the importance of simplicity in design, drawing attention to the fact that even with limited hardware, like the Raspberry Pi, it's possible to achieve impressive performance metrics that suffice for the majority of business needs. He illustrates this with examples showing how a Raspberry Pi can handle a significant number of concurrent requests with sub-200-millisecond responses, challenging the notion that more complex and resource-intensive setups are always necessary.
Through the talk, Miličić advocates for a return to basic principles, such as focusing on solving real-world problems and delivering value, rather than getting caught up in the latest tech trends. He underscores the risks associated with relying on "superhero" developers who are rare, costly, and prone to burnout, suggesting instead that applications should be built in such a way that they can be easily managed and extended by ordinary developers.
The core message is to simplify the architecture to the essentials needed for the application to function efficiently, thereby making it easier to onboard new developers, reduce the risk of burnout, and ultimately, create software that better serves its intended purpose without the need for heroic efforts.
Have you encountered similar challenges in your projects?
How do you balance the inclusion of new technologies with the need for simplicity and maintainability?
Do We Really Need a Hero to Develop Great Software?
Dejan Milicic's talk at Developer Week 2024, focused on the complexities often found in software architecture and the myth of requiring "hero developers" to manage such systems.
Miličić challenges the current trend of over-engineering applications with layers of buzzword-heavy technology stacks, arguing that most business applications, which essentially perform simple CRUD operations, have been unnecessarily complicated.
He points out that the drive to include every modern technology and architectural pattern has often led to systems that are optimized more for developers' resumes than for delivering value to users.
Miličić emphasizes the importance of simplicity in design, drawing attention to the fact that even with limited hardware, like the Raspberry Pi, it's possible to achieve impressive performance metrics that suffice for the majority of business needs. He illustrates this with examples showing how a Raspberry Pi can handle a significant number of concurrent requests with sub-200-millisecond responses, challenging the notion that more complex and resource-intensive setups are always necessary.
Through the talk, Miličić advocates for a return to basic principles, such as focusing on solving real-world problems and delivering value, rather than getting caught up in the latest tech trends. He underscores the risks associated with relying on "superhero" developers who are rare, costly, and prone to burnout, suggesting instead that applications should be built in such a way that they can be easily managed and extended by ordinary developers.
The core message is to simplify the architecture to the essentials needed for the application to function efficiently, thereby making it easier to onboard new developers, reduce the risk of burnout, and ultimately, create software that better serves its intended purpose without the need for heroic efforts.
Have you encountered similar challenges in your projects?
How do you balance the inclusion of new technologies with the need for simplicity and maintainability?