About
As a full-stack developer, I have a passion for building scalable and secure applications that meet the needs of modern businesses. With more than 10 years of experience in the industry, I have a deep understanding of software development lifecycle, from requirements gathering to deployment.
I create high-performance and reliable back-end services that power web applications, I have used many technologies for building web applications and software product, including front-end frameworks like Vue.js and Angular, back-end frameworks such as .Net Core and Node.js, and databases like MS SQL and MariaDB.
Specialized in: .Net Core, Node.js, RESTful API, Microservices, MS SQL, MariaDB, MySQL, HTML5 CSS3, JavaScript, Typescript, Vue.js, Angular, jQuery, Bootstrap, Testing, TravisCI, CircleCI, BitBucket, Git, GitHub, Jira, Linux, RabbitMQ
Full-stack developer & Software architect.
- Birthday: 3 September 1984
- Email: freelance@hiemstra.se
- City: Töreboda, Sweden
- Age: 38
- Degree: Master
- Freelance: Available
Skills
Programming languages
Languages
Resume
Professional Experience
Software Architect - Freelance
2022 - Present
Strukton, The Netherlands
Senior Software Engineering Consultant - Freelance
2022 - Present
Hiemstra media Handelsbolag (own company)
As a full-stack developer, I have a passion for building scalable and secure applications that meet the needs of modern businesses. With more than 10 years of experience in the industry, I have a deep understanding of software development lifecycle, from requirements gathering to deployment.
I create high-performance and reliable back-end services that power web applications, I have used many technologies for building web applications and software product, including front-end frameworks like Vue.js and Angular, back-end frameworks such as .Net Core and Node.js, and databases like MS SQL and MariaDB.
Specialized in: .Net Core, Node.js, RESTful API, Microservices, MS SQL, MariaDB, MySQL, HTML5 CSS3, JavaScript, Typescript, Vue.js, Angular, jQuery, Bootstrap, Testing, TravisCI, CircleCI, BitBucket, Git, GitHub, Jira, Linux, RabbitMQ.
Software engineer
2013 - 2022
Strukton, The Netherlands
At Strukton, Microsoft Gold Partner company, I was software architect / lead developer in a new product and rebuild an old product. This gave me a lot of experience in .Net Framework, .Net Core, C#, Azure Cloud, MSSQL, etc, but also designing, implementing, coaching and testing.
The rebuild product, named POSS, was my latest project at Strukton. The architecture was based on microservices with RabbitMQ as eventbus. The microservices databases were MSSQL and the code was written in C#. We started with .Net Core 2 which were later on all updated to .Net Core 6 / 7. The Website was written in Vue.js for show the information from all the different microservices. Hosting was done on Ubuntu (Linux). I had also setup devOps (CI/CD) in the project. Started with the tickets in Jira, code check-ins in GitHub and builds in TravisCI. A pull-request (PR) was merged to the develop after the PR was reviewed and built on a feature-branch. Check-ins on develop were automatically deployed via TravisCI through a jump-server on the test server. Check-ins to the master were deployed on production.
Keywords: microservices, c#, .Net Core, MSSQL, SQL, Linux, RabbitMQ, lead developer, architect, devOps, CI/CD, TravisCI, Vue.js, GitHub, Jira
I took care of the new product, named Argios, during the whole period I worked at Strukton. The backend was built in .Net Framework 4.5 and updated to the latest 4.8. The website was built in AngularJS and the first app was written in Cordova and later rewritten to PWA in Vue.js. Argios was hosted in Azure cloud. For this project a lot of communication with the customers was needed to get the best product as possible. We used Jira for tickets, GitHub for code and Jenkins for builds. I also setup CI/CD for this product.
Keywords: WebAPI, c#, .Net Framework, MSSQL, lead developer, architect, AnguarJS, Vue.js, GitHub, Jira, Jenkins, PWA
I always was involved in getting the process as smooth as possible, from devOps to testing and was coaching others.
Software engineer
2011 - 2013
Nedap Healthcare, The Netherlands
Worked as software engineer with as job to improve and maintain the software of client administration and planning/roster.
The planning/roster software is written in Ruby on Rails. The development was done in TextMate within an OSX environment. The client administration software is written in Java on top of JBOSS. I was using Eclipse within an OSX environment of the development.
Github was used to backup the code and to keep track of all the changes.
Software engineer/architect
2009 - 2012
Internet Profiler (own company), The Netherlands
The goal of this project was to creating a user profile by analyzing the behavior of the person on the computer and internet and sent alerts by mis- or abnormal behavior.
The project contains a website on a the internet and software for on the computer of the user. The website was created in php5 (object oriented), lots of javascript, smarty (template system) and mysql5.
The software was created in C# and implemented on top of pcap (packet sniffer) and API’s too IE, Outlook, MSN, etc. The software was running on dotnet 3,5. I had to implement Layer 2-7 of the OSI model to analyze the packets. The software was broken down into two main components. A desktop applications which can interact with the user (killing forbidden applications/websites, etc) and a service which analyze the packets and updated automatically the program when there was a new update available.
All the data that is stored in the database was already encrypted at the client side. There was no way to see the data to keep the privacy of the users as high as possible and the risk of leaking any information as low as possible. This all was done by RSA and AES. The password of the user was used to decrypt the data and kept save by their own password. The encryption was done by the software on the computer of the user and decryption was done in the browser of the user through JavaScript.
I worked in a Eclipse on an Linux environment for programming the website and used Virtual Box to get a Windows environment for programming in Visual Studio 2005. SVN was used to keep track of changes within the code.
Internship Software engineer
2008
Dell-ZING, Silicon Valley, USA
Implementing internet radios on a mp3 player and prototyping.
The mp3 player was running on Linux with mono. Most of the software I made was written in C# with some native calls to C++. I had to create software for the device and for the website which was also written in C#.
By prototyping I had to implement every idea I came up with and looks cool on the device. One of my creation was a flickr/picasa app, where it was possible to show all your online pictures on the mp3 player. There was a webkit engine running on the device which I was using. So I made this application by a simple python website and the fancy CSS3 animation options of webkit.
For writing the software I used Visual Studio 2005. For getting the build on the device I used cygwin or a Linux computer.
A couple of months after my internship Dell canceled sadly enough the project.
Software engineer/architect
2005 - 2008
Become Secure (own company)
Online security scanner for websites. Designing, implementing and hosting websites with the emphasis on security.
The scanner was made out of modules and used dynamic binding for loading the modules. The reason for this was to load a module without stopping the scanner. It was very stable and I did never had to stop or restart the program. The scanner was running on multiple computers to maintain almost 100% uptime, this was done because the scanners were running from home internet connections.
Perl was the main language of the security scanner. It was running on a Linux system.
The functions of the scanner were to detect the three most common bugs: XSS (Cross Side Scripting), SQL injection and File Inclusion. After scanning the website it generated a rapport which contained: where the bug is, the dangerous level of the bug and how to fix it. There was also a “proof” option, where the scanner automatically hacked the website. The scanner was able to get automatically information of the server and/or database by exploiting the vulnerabilities.
The website was written in php5 and was almost full object oriented. The database behind the website was mysql5 and was running on a Linux system.
My programming environment was UltraEdit 9 on Windows.
Education
Master's degree, Psychology
2009 - 2013
University of Twente
Specializations: Human Factors and Media Psychology.
Optional subjects: Cognition and Media, Experimental psychology, Knowledge and reasoning, Traffic Psychology.
Core subjects: Data Analysis and Measurement, Media Psychology, Human Computer Interaction, Research in Human Factors, Human Error
Bachelor's degree, Software Engineering
2004 - 2008
Saxion University of Applied Sciences
Specializations: Middleware, Advanced Algorithms (pre-master CS)
Optional subjects: Design Patterns, Functional Programming, Cryptology, Implementation of Programming Languages.
Services
As a full-stack software engineer and architect, I offer a wide range of services related to software development, architecture, and deployment.
Web application development
Custom web applications using a variety of programming languages, frameworks, and libraries, such as Angular, Vue.js, Node.js, Ruby on Rails, .Net Core , and others
Mobile application development
Native, hybrid, PWA mobile applications for iOS and Android platforms, using technologies such as React Native, Xamarin, or Ionic.
Backend development
Design and develop the server-side components of a software application, including databases, APIs, and web services, using tools such as MySQL, PostgreSQL, MS SQL, or .Net Core.
Cloud computing
Design and implement cloud-based solutions for applications, leveraging platforms such as Amazon Web Services (AWS), Microsoft Azure, or Google Cloud Platform (GCP)
DevOps
Help teams automate their software development, testing, and deployment processes, using tools such as Docker, Kubernetes, Jenkins, or Git.
Technical architecture
Designing the overall structure of software systems, including their components, modules, interfaces, and interactions.
Contact
Location:
Sörhyltan 11, 54591 Töreboda