
Rafal Koziarz
First and foremost I’m a technologist and a tinkerer. Just writing syntax is not good enough for me, which is why I take the time to understand what is happening under the hood and the design methodology behind each technology I use. I also do PoC work across a lot of technologies so I can form a genuine opinion — which I believe is key to being a successful technical leader, especially in the architecture space.
I’ve worked in software engineering within Finance for over 15 years and have experience with a plethora of languages and tools. I do have some favourites (especially when scripting or prototyping a concept), but I try to keep an open mind, particularly given how quickly things change in IT. At the same time, I believe in keeping things simple - just because something is newer or flavour-of-the-month doesn’t mean it will solve the problem any better (see mantras below).
Engineering & Software Architecture have always intrigued me, and especially now in the new age of AI — where a single prompt can rewrite an entire codebase — a lot of paradigms are going to shift in terms of best practices and the general approach to development. That’s one of the reasons I think it’s good to put some thoughts down (in the blog): not only about my experience with the technologies and tools I’ve recently used, but also to capture what I think their impact will be on how we approach development & solution design.
Personal Software Engineering mantras
Pretty much anything in Zen of Python as it’s powerful stuff and stands the test of time. Two favourites (that go hand in hand):
- Simple is better than complex
- Complex is better than complicated
Design First - draw it out before starting work
‘What are you trying to do?’ - words my technical mentor Wayne used to ask me when I demanded answers to questions I shouldn’t be even asking…