I’m dedicated to optimizing technology for customer needs, fostering teamwork, and championing clean code and robust architecture.
I believe success is rooted in collaborative teamwork!
Independent IT Professional
I’m an experienced developer who’s had the privilege of working in various capacities, ranging from developer to architect and technical lead, across both large corporations and smaller organisations. Programming is an integral part of my daily routine, and I’m here to share my journey and insights gained over the years in the ever-evolving field of software development. Thank you for stopping by.

Embrace honesty in your actions. Opt for a path that aligns with your authentic self, earning appreciation from both customers and colleagues. Stand firm in upholding your values, recognizing that diverse perspectives may exist. Stay true to your principles while acknowledging the potential for varying viewpoints.

Collaborate seamlessly within the team and with customers. Embrace the diversity of personalities and skills present; in the most effective teams, these differences become complementary strengths. By leveraging our individual strengths, we unlock the true power of cooperation.

While not every challenge may have an immediate solution, take ownership of the task at hand. Commit yourself to exploring every avenue until the issue is resolved or a reasonable conclusion is reached. Your dedication to finding solutions reflects your commitment to the task.
This is an AI generated text, an answer to a ChatGPT question that is just too interesting to throw away.
Data continuously flows through organisations, and on its way, it’s transformed many times to serve different purposes. Functional design emphasises data transformation—projections— rather than repeatedly mutating state in a single database. One particularly useful form of projection is the creation of read-optimised data structures tailored to well-defined use cases.
In my article Kafka Versioning I have briefly covered different ways of handling versions and using schemas to manage changes to the data structures. However, merely understanding these concepts falls short when operating within an environment characterized by numerous teams and bounded contexts. It is necessary to identify patterns and principles for navigating model changes successfully.
"Christina has been instrumental in developing and anchoring a target architecture for our core software products used globally. She also led the implementation of a new approach to clean code to improve reliability and quality of our software, which was very successful and valuable. In addition, Christina has contributed much when it comes to creating a professional culture in the software development unit. I want to thank Christina for a truly great job, and I recommend her highly"
Ã…sa Pahne, CEO at systemite
"From 2015 to 2017 I had the pleasure of working together with Christina again. She was the lead architect then and responsible for making strategic architectural decisions for the products we developed. In my opinion she couldn't have done a better job. In that role she arranged meetings within the development team to discuss the direction we were going and even though she usually was the most competent one in the room she always appreciated an open discussion, knowing that a decision based on our collective knowledge was preferable. She is a natural leader and I can only hope I'll have the privilege of working with her again."
Peter Krickner, IT architect and owner at Krickner IT