Smarter product development
We believe that good software design has positive impact on all software delivery life cycle. Good software design should reflect business requirements and should be aligned with business goals. Therefore it is natural that design evolves with business and changed in time. Tracking such design changes is nothing different than tracking changes in codebase reflecting business rules.

Architecture as Code

When dealing with complex and large-scale software solutions we may encounter several limitations to growth. One of them is the capability to organize effective communication and collaboration within a topology of teams. Knowledge often remains siloed, leading to misunderstandings. Documentation quickly becomes outdated transforming agile intentions into fragile realities, making architectural changes risky, costly, and slow. Architectural drift becomes a silent saboteur.

When dealing with large-scale software solutions, several limitations to growth may appear. One of them is outdated documentation, incomplete communication of requirements, reasons for previous decisions, or behaviors of the system's parts. As businesses extend their processes, the variety of utilized processes, teams and technologies increases rapidly. The web of dependencies grows between our services or subsystems, but more critically among various groups of stakeholders, specialists and target customer groups.

We believe that good software design has positive impact on all software delivery life cycle. Good software design should reflect business requirements and should be aligned with business goals. Therefore it is natural that design evolves with business and changed in time. Tracking such design changes is nothing different than tracking changes in codebase reflecting business rules.

Process Automation

As businesses extend their processes the web of dependencies grows. Dependencies not only between our services or subsystems, but more critically among various groups of stakeholders, specialists and target customer groups. As industry we have learned how to continuously discover processes, how to track each change in code or how to automate deployments. Now it is time to embrace continuous change in software architectures.

Generative Visualizations

- **Fostering a Culture of Continuous Design:** Learn how to champion these approaches within your teams and organizations to build more resilient, maintainable, and agile systems - **Improving Cognitive Load:** Explore how these "as code" methodologies (including text-to-diagram with D2 and workflow-as-code with Kogito), potentially enhanced by DSLs and better HCI in tooling, can reduce cognitive load when dealing with intricate systems.

As an old-schooled software developer I am anchored in proven design patterns and techniques. I trust agile product development frameworks and I'm enthusiast of proven architecture patterns and documenting solution decisions. In recent years I have developed mostly web-based solutions so I had been choosing best practices aligned with distributed systems and infrastructure-as-a-code as, in my opinion, if something could be automated, it probably should be automated ;).
I'm proud to have worked with these amazing people
"Adam is highly passionate about architectural design and obtaining deep technical understanding of the domain at hand. He has a critical eye towards these aspects and towards our current standing and he brings to the table potent avenues that he has researched that could further improve the project."
Erlend Wollan referral
Erlend Wollan
Software Architect at Axbit AS
"Thanks to Adam's ability to consider the project as a whole and in the long term, we knew how to prioritize issues to increase the project's potential. Adam is a person who not only performs entrusted tasks on time and precisely, but also goes out with his own initiative and takes over the responsibility."
Mateusz Perowicz referral
Mateusz Perowicz
Product Manager at Klub Jagielloński
"Adam helped us to start up two new projects and perform their architectural design. His technical input in organizing backend services provides the team with a structured yet simple design approach for technical solutions. Adam provides also good practices from frontend frameworks usage."
Paweł Śledziński referral
Paweł Śledziński
CEO of Perfect One Software

Articles AAA