TL;DR;

It has been 14 years since I started my professional career. As I reflect on my past engagements, I draft a vision for the future.

The value of balance

Contrary to what seams to be the norm in the IT sector, I don't change my workplaces that often. In retrospect, I have a theory why this is. In a job, I value foremost two things: the ability to satisfy my ambition for personal growth, and a fair compensation. Finding the right balance is IMO the key to having a successful and happy career. Going into extremes will just make you miserable. That is, if the compensation falls short, you may feel exploited. With no potential for growth, you will feel you are missing out.

Polidea

When I first started at Polidea we were like 8 people sitting around one table. Since the early days, we adopted a company culture focusing on knowledge transfer and software craftsmanship (without the silly names). This stimulated my growth as an individual contributor. Later, as the company grew, I had the opportunity to take on a role of a leader and mentor to others. Again, satisfying my ambitions. With an adequate (and evolving over time) compensation, I didn't feel the need to change my job. Eventually I stayed 8 years.

EthWorks

Later, I co-founded EthWorks. In hindsight, I feel the balance was too skewed onto the growth side. Founding a company was already quite a ride. At the same time, I learned a lot as we grew the team and navigated the relatively uncharted territory of leading a blockchain focused software house. Yet, as a founder, I also had to accept the reality of how compensation looks in the early days. I was just too inpatient, so I got frustrated. This in connection with my evolving and very critical view on the blockchain ecosystem lead to my first exit after just 18 months. Again, a lesson learned. And to be precise: I have nothing but good things to say about the crew and the culture we build at EthWorks.

incapptic Connect / Mobile Iron / Ivanti

Finally, at incapptic Connect the balance was great, at least initially. Working directly for a product-company solving a really challenging problem for our customers was a great opportunity for growth. Then, we got acquired twice in just one year. Suddenly I found myself working for a rather big enterprise. The pay was great (as is typically the case after an acquisition), but there was only small potential for growth, at least not in the directions I was interested in. All in all, I wouldn't say I was super happy at Ivanti.

Now, that my involvement with incapptic/MobileIron/Ivanti has come to an end, I need to find my balance again.

The road ahead

This time I would like to do something a bit different. In all the mentioned cases, I was an employee (often with shares) and part of a bigger organization. As my life situation changed (I'm a proud father of two daughters now) I would like to have a bit more control over my time. And so I have decided on the following:

  • To start being active in the community again
  • To start my own product - CitroVM
  • To start to offer consulting services in place of full-time employment

The tricky part will be finding my balance by mixing contract vs. product revenue and stand-alone vs. team work.

The blog

Sharing knowledge outwards was a big part of the engineering culture at both Polidea and EthWorks. We wrote blog posts, contributed to open source, had internal presentation, took part in conferences and meetups and eventually organized some of them. This is something I miss badly.

And so, I have decided to start a blog. This time under my own name. It will be an outlet for my thought on software development, and the broader IT sector.

BTW: If you have made it this far, thanks for reading.

The product - CitroVM

In the last couple of months, I have been quietly working on my first own product. I named it CitroVM. It's a macOS-on-macOS virtual machine build on top of the native and extremely fast Virtualization.framework by Apple. An early first version is already available on the Mac App Store.

The plan for CitroVM is to make macOS virtualization as hustle free as possible. In an upcoming version, I will introduce a powerful AI backed Automation mechanism which will reduce the pain of installing your macOS guest. Other quality-of-life features are in the backlog. You can read more in the introduction blog post

Consulting Services

Over the years, I have learned that solving a problem requires far more than just finding some solution. To truly tackle a problem, you need to find multiple solutions, and carefully weight their pros and cons. I would like to offer my help in adopting this mindset in your organization.

Some of the areas where I can be of service are:

  • Code architecture - The way code is structured has a fundamental influence on its quality, readability and maintainability. I can help your team pinpoint opportunities for improvement and weight the pros and cons of different solutions.
  • Process - There is no such thing as one process that fits all. Each team, product and company has its own needs which should be taken into account. I can help your team find what works for them.
  • Code review - In my opinion, the best investment a team can make. Code review typically leads to an increase in code quality and spreads knowledge of the code. I can help your team members improve on preparing Pull Requests and reviewing them.
  • CI/CD - Software isn't done until it ships. Continuous integration and deployment can help to recognize problems as they arise and react to them swiftly. I can help your team adapt a CI/CD focused mindset.
  • Technical analysis - The harder the problem, the more effort you should put into understanding it. I can help with research, feasibility analysis, and Prof-of-Concept implementation.
  • Implementation - Sometimes everything you need is just an additional brain with an attached pair of hands. I can work on improving and extending your code. I can also develop a whole projects from scratch. In both cases, I can work solo or as part of your team.

Please reach out if you are interested. Mail me at work@kedracki.com, or write on LinkedIn