A portrait of Joern Buchwald

Joern Buchwald

Independent Software Architect

I help startups to plan software architecture and team psychology

Establishing high-performing software development teams is really hard. It requires software architecture and team structures capable of autonomy and decentralized decision-making.

The psychological foundation for this is a strong, trust-based relationship between business leaders and developers. Developers need autonomy over technical decisions and approval for investing time in software quality to make software development sustainable. Business leaders need assurance that technical decisions and time investments align with the business strategy and ultimately benefit the business.

Having worked in various roles and projects as a developer, I have witnessed this fail many times. I believe that a consciously planned sociotechnical architecture is necessary to prevent structural problems in software development. Now, as an independent architect, I've made it my mission to help startups build the right sociotechnical architecture from the beginning.


Sociotechnical Architecture

Based on past experience, best practices and scientific research, I created a framework of key capabilities for an effective sociotechnical architecture:


Blueprints

Blueprint image

The goal of my work is to deliver advice that has practical value for developers. Because of this, I like to deliver my work in form of blueprints which are code repositories that contain enough codebase and documentation structure to convey the architectural bigger picture.


Want me to help?

As an independent software architect, I can be hired by startups to help them with establishing or improving development teams. Typically, I will be working as an advisor or sparring partner for a technical co-founder in an enabling role. My focus is to work on the technical and organizational structure so that development teams can work efficiently on their own. I like to become a trusted advisor that can be called in when necessary. I offer two ways two help:

Planning

Hire me to plan or improve technical and organizational structures for development teams. This may include deliverables like architecture blueprints, codebase overhauls, workshops and coaching sessions for leaders and developers.

Fixed Price
Advisory Retainer

Get unlimited access to pick my brain via audio calls, video calls or text chat. Invite me to strategic discussions to make sense of the context and the implications of technical and organizational decisions.

Monthly Fee

Interested?

Feel free to contact me in English or German to schedule a first call.


JΓΆrn Buchwald

Coding has been my passion since age 12 and my full-time profession since 2013. I have been an employee, a freelancer and a co-founder of SaaS startup that unfortunately failed. As a developer I worked for startups as well as large corporations mostly on frontend development (TypeScript, Web, Hybrid Mobile), but also backend development (Node, Java, PHP) and cloud infrastructure (CI/CD, Docker, AWS, Serverless, Kubernetes). I guess I could be called a generalist with an interdisciplinary perspective on software development. I always wanted to understand the bigger picture.

For about seven years I worked in numerous projects within different companies. As a freelancer and as an employee of a software agency I entered a lot of projects in different companies usually for a limited amount of time. It gave me a lot of insight into different projects and how development teams work.

As a developer, I was eager to solve technical problems. However, at some point I noticed something very surprising to me. The really big problems that projects struggled with were actually not technical. They often resulted in technical problems but were often caused by things like communication problems, unclear responsibilities or a bureaucratic culture in which developers felt being trapped with no agency. In the projects I worked in I always loved to listen to the stories of fellow developers and it turned out that these problems are very common. Very often, management could not get a grip on the problem and developers suffered in silence and despair. As a result, the delivered software did not meet what was promised to stakeholders and the damage was done.

Why do so many projects struggle although everyone seems to do their best? What would I recommend decision makers to do different? It bothered me to not have a clear answer to this question because I was convinced that an answer would provide huge value. Eventually, I quit my developer job to become independent again and I made it my mission to solve this. I began researching and exploring how to fit together software architecture, organizational design, software management, leadership coaching, sociological research and psychology into a consistent sociotechnical architecture.

Portrait image
  • Master of Science

    Applied Computer Science, Ruhr-University Bochum

  • 10+ Projects

    Since 2013: Software agency employee, Freelance developer, Technical co-founder

  • Developer / Architect

    Web, Mobile, Backend, DevOps, Cloud Infrastructure

  • German / English


References

Here are a few of my past projects:

E-Commerce Platform
A late-stage e-commerce startup was developing a headless commerce platform to replace their existing Magento-based shop. I was hired to help them improve collaboration within and across their partially outsourced development teams. My job was to propose improvements to higher management and work with project managers and developers to implement them.
  • Align development workflows of frontend and backend team

    The workflow of a frontend and a backend development team had to be aligned to handle breaking backend/API changes properly. I documented the workflow and proposed specific changes to the teams.

  • Dealing with knowledge silos

    A development team faced problems of an unbalanced knowledge accumulation and dependence on a leading developer. I interviewed all developers to identify knowledge gaps and organized knowledge transfer workshops to foster a more autonomous work style among developers.

  • Quality / performance tracking metrics

    I integrated Google Lighthouse into the automated deployment process of the web app and set up a tracking dashboard, that allowed project managers to track a number of quality and performance metrics over time.

  • Infrastructure troubleshooting tools

    The company wanted to collect and analyze log messages from various systems to help developers with troubleshooting infrastructure issues. I prototyped multiple solutions and aligned stakeholders from different teams.

Vue.js
Magento
Lighthouse
GitLab
Docker
Kubernetes
Heroku
Elasticsearch
Grafana