Adrien Harnay
Adrien Harnay,
Lead Front-End Engineer
7 years as a JavaScript developer
6 years with React and React Native
Lead / Staff Frontend Engineer for 4 years

Throughout my career, I have worked on many projects and faced various challenges. Today, I want to share my expertise with you and help your company get a head start.
I am available for contract work.
MVP for your start-up
New features on your product
New project for your organization
Mentor your team through a migration

Most common services

Web application
react
typescript
html
css
responsive-design
server-side-rendering
performance
seo
Do you need a static website or a dynamic app for your users (or a mix of both)?
I have worked with product and back-end engineers for most of my career, and will have no problem commnicating with your teams.
I can also handle all the roles if you need me to: UI, UX, front-end, back-end, and infrastructure.
  • check-mark
    Great user experience (even for people who are not tech-savvy)
  • check-mark
    Great performance and SEO
  • check-mark
    Beautiful on mobile, tablet, and desktop
  • check-mark
    Type safe and clean code, easy to iterate over
  • check-mark
    Fullstack or only front-end
  • check-mark
    Design system to make all your products fit your brand
Mobile application
react-native
typescript
ios
android
responsive-design
performance
Do you need a mobile application to launch your project?
Or you already have a website but now you need native animations, push notifications, audio recording, geolocation?
I have worked on several mobile applications, and am ready to help you improve the experience of your users.
  • check-mark
    Great user experience (even for people who are not tech-savvy)
  • check-mark
    Fluid and beautiful
  • check-mark
    Great to use on iOS and Android
  • check-mark
    Type safe and clean code, easy to iterate over
  • check-mark
    Fullstack or only front-end
  • check-mark
    Design system to make all your products fit your brand
Technical migration
react
react-native
typescript
server-side-rendering
performance
seo
generated-documentation
Do you need to migrate from your current tech stack to React and/or React Native?
I have extensive experience with TypeScript, React, and React Native architectures. I have also worked with GraphQL a lot.
On top of the technical stuff, I will mentor your team through the migration with workshops and documentation.
  • check-mark
    Know how to build resilient architectures
  • check-mark
    Have experience with front-end, back-end, and architecture
  • check-mark
    Type safe and clean code, easy to iterate over
  • check-mark
    Workshops to get your team up to speed
  • check-mark
    Detailed documentation on best practices and tutorials
  • check-mark
    Code reviews and mentoring
Design system and component library
react
react-native
typescript
responsive-design
design-systems
component-libraries
Do you want a unified language between your product and technical teams?
I can increase the velocity of your developers with a component library tailored to your brand.
It will also be usable on web, iOS, and Android.
  • check-mark
    UX and product-oriented developer
  • check-mark
    Know how to build sensible and scalable components
  • check-mark
    Same API for the web, iOS, and Android
  • check-mark
    Prototyping tool for your product team
  • check-mark
    Sandboxing tool for your developers team

Skills

You can click on each skill to learn more about my experience.

In depth

Each skill listed here has been used in a professional setting.
I like to try new things on side projects to keep learning and stay ahead of the curve, but I stick to my area of expertise when working on professional projects.

React
react
I have shipped several React apps to production, and have experience with different syntaxes (hooks, classes), different build chains (vanilla apps, Next, Gatsby, create-react-app), and different use cases (authentication, routing, forms, ...).
React Native
react-native
I have worked on several React Native apps, and have experience with different syntaxes (hooks, classes), different build chains (vanilla apps, Expo), and different use cases (authentication, routing, forms, animations, ...).
JavaScript & TypeScript
javascript
typescript
I know JavaScript like the back of my hand and am very proficient with it. Today, I mostly use TypeScript as I think it delivers more value in terms of code maintenance and ratio of bugs. I have migrated large codebases from JavaScript to TypeScript, and can help your team write sensible TypeScript code.
HTML
html
I know semantic HTML, and always leverage native features so that your website works flawlessly on all supported browsers. Accessibility is always one of my top priorities. I also have extensive experience with SEO and will be able to meet the needs of your business.
CSS
css
responsive-design
When working with CSS, I optimize for great user experience and maintainability, so that developers who come after me can iterate quickly as the features need to evolve. I have a lot of experience with responsive design.
Network & state management
redux
apollo
I have a lot of experience with REST APIs, and have built apps with Redux as a state management solution. I have also worked with Apollo GraphQL for two years, at first by writing gateways over REST APIs, then by consuming a native GraphQL API. I am quite familiar with the internals of the Apollo codebase.
Server side rendering (SSR)
server-side-rendering
I have implemented several custom server side rendering solutions, and have also worked with tools such as Next & Gatsby.
State machines
state-machines
When working on business critical workflows, state machines can add extra safety by forbidding impossible states. I have worked with state machines several times, using tools such as xstate.
Design systems
design-systems
Design systems are in my opinion one of the tools that bring the more value to an organization. I have been in charge of a design system for over a year, and can help you implement one in your organization. It will also be compatible with all your different browsers and OS using the same API, and your team's productivity will increase tenfold.
Component libraries
component-libraries
Documenting components is important when you need several developers or several teams to know how a set of components are working. I have worked with tools such as Storybook and Playroom, and can implement a component library for your organization.
CMS
cms
CMS are great to offload work from your developers team, and to give ownership to the right teams. I have been in charge of implementing several CMS for blogs and public websites, and I know multiple SaaS and open source solutions (Strapi, Contentful, ...).
Web performance & SEO
performance
seo
I have led projects focused on Web performance and SEO, and have a lot of experience on the matter. If your apps suffer from a performance problem, I can audit them and implement solutions to improve Time To Interactive and help you set up a performance budget that will track the performance of your apps over time. I am also able to fix the most common SEO problems and give you tips on your SEO strategy.
Internationalization (i18n)
internationalization
It is quite common to need an app to be available in different countries and languages. I know how to manage an app available in different languages, how to setup a translation service, and how to make sure you app works in all the countries and timezones you target.
A/B testing & feature-flagging
feature-flagging
A/B testing can help you improve your product based on the decisions of your user. Feature-flagging allows you to provide some features to a subset of your users only, and to have control over what and when you are releasing. I know how to implement both solutions, and how to make them fit in the architecture of your apps.
Analytics
analytics
I have implemented analytics services such as Google Analytics, Facebook Pixel, Amplitude, and Google Tag Manager in several apps, and can quickly set you up on the solution you need.
Bug tracking
bug-tracking
A strong bug-tracking pipeline can be the difference between releasing once a week and several times a day. I can set up this kind of pipeline in your organization and give you the confidence you need to iterate even faster.
Generated documentation
generated-documentation
There will never be enough documentation, but few people like to write it. I know how to set up a generated documentation system so that your documentation can live right beside your code, and make it all accessible via a neat website.
Monorepositories
package-managers
monorepositories
Monorepositories are all the rage right now, but they can cause nasty bugs if you don't know how to set them up properly. I have encountered a lot of bugs because of monorepositories, and now know how to set them up properly so that your services interact well together.
Bundling
webpack
I use Webpack to bundle most of my apps, and Webpack configs don't scare me one bit. I know how to set up parallel builds, different builds for your server, your client, and latest browsers, how to write plugins and loaders that will fit your use cases, or how to optimize your builds so they become blazing fast.
Linting
eslint
A strong linting system can help avoid many bugs, and I have set up many different over the years. It is now the first thing that I do when starting a new work project, and I can help your team gain confidence and stop wasting time during PR reviews.
Testing
jest
cypress
detox
Tests are a must if you want to deploy on fridays with confidence (or any day, that is). From unit tests to end-to-end tests, I can help you implement a testing strategy that will be as smooth as possible for your dev and/or QA teams, and that will help you make sure critical code paths and user scenarios are always working.
CI & CD
docker
shell
circleci
I have implemented several pipelines that handle building and deploying the code to your platform of choice. From linting your code to deploying your app to your infrastructure, I can set up an optimized workflow that will replace your manual deployments.
Hosting
aws
vercel
I have practiced hosting apps on several platforms, and I can help you choose which platform is best suited for your project. I can also help you optimize the release process of your project on your platform of choice.
Back-end
express
mongodb
apollo
graphql
I know back-end technologies such as Express, MongoGB, and Apollo Server. I can set up the back-end for your project, or build a GraphQL gateway on top of your existing REST services to help you integrate Apollo Client in your front-end apps.