Joni Harju
Software Developer
I build reliable solutions that work
About Me

I'm a software developer with over two years of experience creating efficient, scalable, and user-friendly web applications. I enjoy tackling challenges, learning new technologies, and building new things.
Contact Information
- Email: jonipharju@gmail.com
- LinkedIn: https://www.linkedin.com/in/joni-h-89172a134/
Background & Expertise
I have professional experience building modern web applications, specializing in JavaScript/TypeScript and React. My work includes developing scalable headless websites, custom CMS solutions and fast SEO optimized static websites
Interests
Outside of coding, I enjoy playing guitar, exploring new tech, and diving into PC hardware and gaming.
My Projects
Dead Set Bit - Headless Website
Built a server-side rendered headless website optimized for SEO using Next.js and Sanity CMS. Configured Google Analytics, Tag Manager and cookie consent. Set up Sanity CMS for content management from ground up, enabling authenticated users to edit content, create new pages, and publish blog posts. Also helped to further develop the design by creating Figma prototypes.
Technologies Used:
Loan Application Client
Developed a loan application website using Next.js and Material UI. Set up a custom backend using Strapi, PostgreSQL, and MinIO for managing content and media storage. Enabled content management in three languages, allowing easy creation and editing of pages via Strapi.
Technologies Used:
Codekatu Oy - Internal CMS Tool
Designed and developed an internal CMS tool for managing content for customer projects with Next.js. Configured a PostgreSQL database using Prisma as the ORM and implemented user authentication with email functionalities.
Technologies Used:
Dead Set Bit - Static Website
Delivered an SEO-optimized static website built with vanilla HTML, CSS, and JavaScript. Configured Webpack from scratch for efficient asset bundling and production optimization. Contributed to the design implementation and created Figma prototypes.
Technologies Used:
Tech Stack & Expertise
| Technology | Skill Level | Experience | How I Used It |
|---|---|---|---|
React | Advanced | 2 years | Built dynamic and responsive user interfaces for several web applications. |
Next.js | Advanced | 2 years | Developed server-side rendered and statically generated websites for improved performance and SEO. Used as my main tool for over 2 years. |
Astro | Intermediate | 0.5 years | Built SSG blog website with Astro, optimizing performance by shipping minimal JavaScript to the client. Utilized Astro’s built-in support for markdown to create blog content. |
TypeScript | Advanced | 2 years | Built headless websites, implemented strong type systems for frontend applications, and ensured type safety in various projects. |
JavaScript | Advanced | 3 years | Used JavaScript for front-end interactivity and back-end server logic. |
HTML | Advanced | 4 years | Crafted semantic HTML structures for various websites. |
CSS | Advanced | 4 years | Styled websites and implemented responsive design techniques and animations to enhance user experience across devices. |
Tailwind CSS | Intermediate | 0.5 years | Styled websites and created style systems. |
Firebase | Intermediate | 0.5 years | Used as a backend for a website to save contact form information. |
Node.js | Advanced | 2 years | Built Node scripts for automating internal workflows. |
PostgreSQL | Intermediate | 1 year | Used PostgreSQL as a database for a internal CMS tool. |
Sanity.io | Intermediate | 0.5 years | Setup Sanity from ground up and built a headless website for a customer. |
Material-UI | Intermediate | 1 year | Used Material-UI for styling and themeing. |
Prisma | Intermediate | 0.5 years | Utilized Prisma as orm for a internal CMS tool |
Skill Level
Advanced
Experience
2 years
How I Used It:
Built dynamic and responsive user interfaces for several web applications.
Skill Level
Advanced
Experience
2 years
How I Used It:
Developed server-side rendered and statically generated websites for improved performance and SEO. Used as my main tool for over 2 years.
Skill Level
Intermediate
Experience
0.5 years
How I Used It:
Built SSG blog website with Astro, optimizing performance by shipping minimal JavaScript to the client. Utilized Astro’s built-in support for markdown to create blog content.
Skill Level
Advanced
Experience
2 years
How I Used It:
Built headless websites, implemented strong type systems for frontend applications, and ensured type safety in various projects.
Skill Level
Advanced
Experience
3 years
How I Used It:
Used JavaScript for front-end interactivity and back-end server logic.
Skill Level
Advanced
Experience
4 years
How I Used It:
Crafted semantic HTML structures for various websites.
Skill Level
Advanced
Experience
4 years
How I Used It:
Styled websites and implemented responsive design techniques and animations to enhance user experience across devices.
Skill Level
Intermediate
Experience
0.5 years
How I Used It:
Styled websites and created style systems.
Skill Level
Intermediate
Experience
0.5 years
How I Used It:
Used as a backend for a website to save contact form information.
Skill Level
Advanced
Experience
2 years
How I Used It:
Built Node scripts for automating internal workflows.
Skill Level
Intermediate
Experience
1 year
How I Used It:
Used PostgreSQL as a database for a internal CMS tool.
Skill Level
Intermediate
Experience
0.5 years
How I Used It:
Setup Sanity from ground up and built a headless website for a customer.
Skill Level
Intermediate
Experience
1 year
How I Used It:
Used Material-UI for styling and themeing.
Skill Level
Intermediate
Experience
0.5 years
How I Used It:
Utilized Prisma as orm for a internal CMS tool