I am passionate about the accessible web, semantic markup and cascading style sheets. On this website I’ll share some of the projects I’ve worked on and some of my thoughts about earlier mentioned passions. If you want to get in touch, just drop me a line on hi@michaelhastrich.nl.
Front-end development covers so many different skills that I'd like to emphasize what I'm good at and what I care about. If you are looking for someone to help you set up a maintainable and solid codebase, maybe I can help. Below are the things I care most about in my work.
I have had the pleasure of working with a lot of different designers over the years. I speak their "language" and get why details like line-height and white space are important. I understand that sometimes an extra variant of a header is necessary to make a component stand out a bit extra. I love to sit down with designers to discover systems within their ideas and shape those ideas into a design system that we can use in (almost) every context and use-case.
I believe it's essential that whoever visits a website or uses an app to do something, is able to do what they came to do. Regardless of their abilities. In practice what that means, is that I try to make my work as accessible as possible. Whether someone uses a keyboard to navigate the website or uses assistive technology like a screenreader, my goal is to make the experience as seamless as possible for as many people as possible. I ensure that by writing clean and semantic markup, keeping an eye on document structure, sticking with native components as much as possible and working closely with designers to come up with solutions that work for everyone.
I like simple solutions that make sense to people. That means I like to keep my tool chain within a project as lean as possible. Do we really need Bootstrap or Tailwinds? Why do we write a bunch of mixins that are used only once or twice and nobody understands anymore 2 months down the road? And if we decide we actually do need them, let's document them as best as we can, so the next developer or our future-selfs at least have an understanding of what the problem was we were solving. Removing 'the magic' from a code base gives me great pleasure.
Making sure your visitors understand what they need to do on your website to get what they came for. That sounds logical. Unfortunately that is not always the case for a lot of digital products that exist today. Of course UX designers play a huge part in this, but I do feel it's my duty as a front-end developer as well to keep a broad view of the elements in a project and how they behave. "We already have something that does something similar. Maybe we could use that, instead of adding a new, slightly different, thing?"
Over the years I've worked on a variety of projects for clients ranging from design agencies to the national airport and Dutch government. Usually I'm the person responsible for markup and styling, setting up and maintaining component libraries and safe-guarding usability and accessibility.
Bynco sells high quality used cars and does so completely online. They have no showrooms or sales representatives, so the online sales experience needs to be trustwhorthy and solid. DearNova previously built and designed the business-to-consumer part of the site and in 2020 I joined the team that would build a consumer-to-consumer section. My main responsibilities were the front-end development (Angular) of several new features for buyers and sellers, to allow for a secure and smooth transition between the vehicle's owners.
At DearNova I worked on the team responsible for the personal account section of the website as well as the new Track and Trace application for PostNL. Both applications use the latest version of Angular (8 at the time of writing) for their front-end. My main responsibility was building a design system, working closely with UX and visual designers, that allowed quick implementation of new features whilst safeguarding accessibility and PostNL's brand.
KOOP (overheid.nl) is the organisation responsible for Dutch governmental publications and announcements. They maintain and manage a range of websites. To assure a consistent style across these different sites, a component library was created that could be used to build and extend the different websites and maintain a similar look-and-feel across all the different domains.
ONVZ is a health insurance company in the Netherlands. For Fabrique Amsterdam I was part of the Scrum team responsible for creation of their redesigned website that focuses heavily on user convenience. Part of the website was build using Vue.js and together with the front-end developer of Fabrique I build a component library that enables ONVZ to extend their website over the next couple of years.
For Royal Schiphol Group I worked in one of the four Scrum teams responsible for schiphol.nl, the website for the national airport. As one of the front-end developers responsible for Personal Relevant Information I worked on the online maps and "My Travel Day" parts of the website. A large part of my time at Schiphol I spend on building the new Component Library that was part of a complete redesign of the website at the beginning of 2018.
At the SVB I helped maintain and extend the internal knowledgebase, that is used daily by the Service Team employees who determine if someone is eligble for social security benefits. In the Scrum team I was responsible for maintaining the CSS and HTML. I also worked closely with the backend developers to maintain the CMS and make sure the service, dating back to 2004, remained stable and performant.