During my career in the IT industry I was a software developer, analyst, architect, trainer, consultant, team manager, product manager, project manager. I worked in both Polish and international teams for clients from industry, telecoms, banking and public administration.
I participated in projects that were both very short and planned for years.
I designed, estimated and planned (sometimes on my own, but usually as part of a larger team) dozens of solutions.
Regardless of my role, I have always tried to participate (even to a small extent) in programming, which is my constant passion.
I believe that the principle of minimalism should be applied to the design and delivery of IT systems and that the solutions provided should be as simple and understandable as possible.
Selected projects in which I participated
Product Owner, Architect, Software Developer
Team Leader, Architect
|A project using the Amazon AWS infrastructure along with Kubernetes, Docker and Microservices technologies to create a PaaS platform.|
|AMS (Schneider Electric)|
Back Office Project Manager, Integration Architect
|Maintenance and development of customer back-end systems.|
|UKE EPL (Office of Electronic Communications)|
|The aim of the project was to prepare the assumptions and architecture of the electronic document management system and to prepare tender documentation.|
|Corporate Portal (Schenker Sp. z o.o.)|
Back Office Project Manager, Main Architect
|As part of the project, the official company portal was designed and implemented (now it is replaced by a new solution).|
|PZU24 (PZU S.A.)|
Leader of Technical Team, IT Consultant
|Intranet built on DynaXML platform (Java)|
Java Team Manager, Main Architect
|The DynaXML platform was originally designed as a CMS (content mamnagement system) and then developed into a portal platform. Extensively developed in the years 2001-2009 under my leadership, it was the basis for many implementations of CMS/Portal/Intranet solutions for AMG.net customers. Some of these solutions are still maintained.|
|Corporate Portal (BRE Bank S.A.)|
Java Team Manager
|Corporate portal built on the ATG Dynamo platform.|
IT projects & team management
Agile software development methods are now being presented as a panacea for the problems of both customers and contractors. They are often treated as a way to reduce project costs, for example by reducing or eliminating its design syntax and documenting the system.
In fact, the Agile approach can be extremely useful, focusing the team's attention on the most important tasks. Provided that these critical tasks are properly identified.
Regardless of whether we use Agile, Waterfall or iterative methodologies, the most important thing is to provide the required functionality. Putting project methodologies or preferred technologies above business goals is a simple way to disaster. Good technical background and solid craftsmanship should always prevail over even the most fashionable trends and ideologies. Only such an approach can guarantee success.
I am always amazed by the opinions of some people that IT architects are a group completely detached from the reality and reality of programming.
I have never met a situation when the system design (detailed or at least outline) made before the start of the development was the source of later problems. On the other hand, I had a chance to observe many times how the lack of a vision of the system or later supervision of the architect led to a disaster. Luckily, nobody questions the position of architects in the building industry and thanks to that bridges and skyscrapers do not need to be continuously fixed with patches.
Reasonable, knowledge and experience based design of the IT system can reduce risks and optimize costs.
The role of the programmer is to select such tools that will allow him to do his job best. This may mean adapting to the required architecture or proposing a better solution. It all depends on the context of the project. The tool is only a tool - the most important is the final result, i.e. a functioning system that meets the customer's requirements.