A SOFTWARE SIMPLICIST
In the software world there are a lot of methodologies, principles and belief systems to design, write and maintain software. Throughout my years of experience and education, I have seen that one fundamental principle always seems to yield the best result. Simplicity.
My favorite methodology in software is test-driven development. Why? Because it enforces simplicity on different coding styles. And to some extent it leads the way to the SOLID principles. Also it’s a natural fit for separating business logic in to logical units, as in domain driven design.
The last couple of years of my career have been taking a turn towards technical analysis and architecture, but again with a big focus on trying to keep complex systems as simple as possible. My experience has taught me that all projects start out smooth but that the real art of software engineering is keeping it that way. Not a small feat, but one that can be accomplished by simplicity, automated testing and SOLID design principles, the three pillars of my carrier in software.
At Baloise, I was primarily hired as a Technical analyst which function is to guide a part offshore and part local team in all technical issues concerning a new insurance software suite.
I was given the freedom to fill in this function as best I could. I came up with the idea to make a raw 'skeleton' project where I could quickly make outlines of how I structurally wanted the solution to look like. The other advantage was that I could now easily make Enterprise-Architect UML schemas to communicate these ideas across the different teams in the form of extensive design documents, especially to the offshore teams. My next step was to introduce test-driven-design, which I already incorporated naturally in my skeleton project to the rest of the team.
In conclusion, I succeeded in making a very clear and fully documented architectural picture based on SOLID principles and communicate it across different teams, including an offshore team. Furthermore, I incorporated unit-testing as part of the team culture.
At SD Worx, I was hired for my expertise in service-oriented architecture and NServicebus as well as my ability to work independently. I was given a set of projects of which I was the technical owner and architect. The first project was connecting an SD Worx internal customer data distribution system to an external CRM.
My next project was creating a legacy long running process application into a modern web accessible service, I used common tools for the job, such as NServicebus, Web api and Swagger to achieve this. The team maintaining the application needed some additional training on web development, bus architecture and more importantly test-driven design, which I gladly provided.
Next was an internal GDPR testing data distribution framework. For SD Worx GDPR proof testing data which could be transferred from different environments is a very Important task that needed to be automated. I designed the web UI and background processes to achieve this. The biggest challenges in this project where coordinating different Teams, managing their work, and filling the gaps where needed.
The web reporting tool, where I helped on the frontend as well as backend. I Implemented a Scheduling tool and worked on Important performance and stability Issues.
At Agidens I’m working on a brand new industrial software platform (Factory 4.0). It aims to make the life of truck drivers and industry operators easier by helping to create smart factories. A lot of software needs to communicate in these environments and that's where my software communication expertise comes in.
Besides making things smart and connected, Agidens and Rombit realized that things need to look good as well. And I’m the lucky guy who is helping on this as well. My main contribution was introducing and implementing a service oriented architecture and connecting industrial devices using the AMQP/RabbitMQ message protocol. Also my expertise in WPF & MVVM was highly valued by my colleagues.
Working on integration of energy measurement devices, thermostats, blinds, HVAC,… on the Fifthplay Iot platform. we used a full .NET stack: C#, Nservicebus, MVC, EF and there is whas lot of emphasis on testing and clean code. With NServiceBus/RabbitMq we created a full scaling service oriented internet of things platform. I think it’s fair to say that most of my technical skills find their roots in this project. Some of my colleagues where outsourced and needed some extra training and management, and i was happy to assist.
In AngularJs and Asp.net I designed and created a B2B single page style administration portal with the focus on a clean and user friendly UI.