If you think good architecture is expensive, try bad architecture.
My name is Kamil Grzybek. I solve business problems - by talking to people, designining systems architecture and writing code for over 15 years. From time to time I conduct consultations, trainings, workshops and make public appearances sharing my experience and knowledge gained while solving real problems.
I play many roles at almost every stage of software development lifecycle - from "information gatherer", through analyst, modeller, architect, leader, programmer, tester, to maintainer of the system in production.
What I Do?
Lead the software engineering process
On a daily basis, I work for ITSG Global as Head Of Software Engineering where I lead department of highly skilled, cross-functional teams implementing various types of projects for clients from around the world.
We build solutions from the idea, through in-depth analysis, design, implementation to maintaining the system in production in accordance with the devops culture - "you build it, you run it".
I try to lead teams according to the idea of servant leadership. I am personally involved in the production process (hands-on) on each stage of the software development lifecycle.
I help other companies and people
From time to time I advise and help other companies and individuals in various aspects related to software engineering and architecture.
I do analysis, modeling, design architecture, implementation and provide many other commercial services. I work for institutions all over the world.
I also provide mentoring services for individuals.
More about it in the Services section.
Training and Mentoring
Several times a year, I train other companies and teams in topics related to Domain-Driven Design (DDD) and software architecture in cooperation with the polish training and consultancy company Bottega IT Minds.
Sometimes, I teach the Software Architecture at Polish-Japanese Academy Of Information Technology university.
OSS and IT community contribution
As much as time allows me, I try to be active in the IT software development community.
I try to turn the gained experience into articles for the Blog, so that this information can be used by others.
The articles themselves are not everything, the code speaks for itself. I share my knowledge using GitHub platform by sharing example projects with a comprehensive description.
From time to time, I share my experiences on my social media - mainly Twitter and LinkedIn.
I appear at various conferences related to software engineering as a speaker. I mainly talk about my experiences and ideas related to software architecture, testing and Domain-Driven Design.
I also try to participate in meetings of IT groups or take part in podcasts as a guest.
A list of all my speeches can be found in the Speaking section.
Even though software engineering takes me quite a lot of time and is my passion, I try to find some time for things not related to technology as well.
I love spending time actively with my family, doing sports, going to theatre, running, playing board and video games or expanding my knowledge in other areas.