---
title: Adding TypeScript to my skills to become a Full Stack Developer
description: Discover how adding TypeScript enhanced my Java skills to excel as a Full Stack Developer, bridging front-end and back-end development seamlessly.
image: https://share.foreside.nl/hubfs/blog-post-ogeday-ts.jpg
---

[Skip to main content](https://share.foreside.nl/en/insights-and-updates/adding-typescript-to-my-skills-to-become-a-full-stack-developer#main)

[![Logo Foreside IT, Eindhoven](https://share.foreside.nl/hs-fs/hubfs/foreside-logo-200x50.png?width=197&height=50&name=foreside-logo-200x50.png) ![Logo Foreside IT, Eindhoven](https://share.foreside.nl/hs-fs/hubfs/foreside-logo-200x50.png?width=197&height=50&name=foreside-logo-200x50.png)](https://share.foreside.nl/en/insights-and-updates)

- [Insights & Updates](https://share.foreside.nl/en/insights-and-updates)
- [Foreside website](https://foreside.nl)

Open main navigation

Close main navigation

- [Insights & Updates](https://share.foreside.nl/en/insights-and-updates)
- [Foreside website](https://foreside.nl)
- [Contact us](https://www.foreside.nl/contact)

[Contact us](https://www.foreside.nl/contact)

# Adding TypeScript to my skills to become a Full Stack Developer

## Background

In 2015, I started with Java during my Bachelor in Computer Engineering to pursue my career as a Software Engineer. After my graduation, I landed my first developer position as a Java Backend Developer for a large financial platform. The platform was built on top of a Microservices architecture. I was thrown in the deep since the Microservices pattern was not something they teach you in university. This forced me to always focus on the quality of my code.

## **Adopting TypeScript next to Java**

As my career progressed, I found myself drawn to the dynamic, fast-paced and open-source world of JavaScript and wanted to start using NodeJS. I switched companies and immediately I was surrounded with the ability to build an API in minutes. On top of that, I could use the same language to build other types of applications like responsive frontend applications, mobile apps and desktop applications.  

Adopting JavaScript next to Java was both exhilarating and challenging. JavaScripts versatility and widespread use across the web presented me with a wealth of opportunities! However, there is a downside to this flexibility and compatibility for multiple channels: no types. No types meant I spent more time ensuring my code did not break because of type mismatches. The upside of this is that I got plenty of experience writing tests!

Unlike the strictly typed Java language, JavaScript does not support typing but this was solved in 2012. The Open Source community introduced TypeScript, a superset of JavaScript, adding (dynamic) static types to the language. I adopted TypeScript, the overlap with Java became much bigger and my adoption accelerated. I now use TypeScript to develop NodeJS backend applications and React/ NextJS frontend applications.

## **The power of the Open Source Community**

TypeScript is supported by many tools that make coding faster and better. Tools like VSCode allow you to develop code with the help of extensions. These extensions, but also frameworks like NestJS and React, help you write code better and faster. I found that the downside of relying on extensions and frameworks is that you run the risk that you lose touch with the core software design patterns of a language like JavaScript. 

I always strive to fully understand how a language works under the hood. This helps me to faster understand and adopt frameworks (frameworks come-and-go in rapid succession in the JavaScript world).

## Lessons learned and best practices

I agree with many that JavaScript is not the best language in the world, but that is the price of multi-channel compatibility I guess. To make up for its quirks and limitations, I use e.g. The Gang of Four Design Patterns to understand how JavaScript and TypeScript work under the hood. It is impressive to see how the Open Source community accelerates the improvements of JavaScript and TypeScript! 

In summary, adding TypeScript to my skill set besides Java was a great decision for my career! It created new possibilities and expanded the domains I am able to develop in. Even though I started with Java and I still enjoy developing with it, I consider TypeScript to be the best addition to my skill set so far! Next on my list is GO...

I use both Java and TypeScript in my current project where I am developing a large composable platform, leveraging the strengths of both languages! I've written a Blog Post about [Unlocking efficient, scalable service communication with RabbitMQ](https://share.foreside.nl/en/insights-and-updates/decoupled-integration-architecture-with-rabbitmq) where I apply both Java and TypeScript.

**Tags:** 

[Java,](https://share.foreside.nl/en/insights-and-updates/tag/java) [TypeScript,](https://share.foreside.nl/en/insights-and-updates/tag/typescript) [Full Stack Development,](https://share.foreside.nl/en/insights-and-updates/tag/full-stack-development) [JavaScript,](https://share.foreside.nl/en/insights-and-updates/tag/javascript) [Microservices,](https://share.foreside.nl/en/insights-and-updates/tag/microservices) [NodeJS,](https://share.foreside.nl/en/insights-and-updates/tag/nodejs) [Open Source,](https://share.foreside.nl/en/insights-and-updates/tag/open-source) [Frontend Development,](https://share.foreside.nl/en/insights-and-updates/tag/frontend-development) [Backend Development,](https://share.foreside.nl/en/insights-and-updates/tag/backend-development) [Design Patterns,](https://share.foreside.nl/en/insights-and-updates/tag/design-patterns) [Software Engineering](https://share.foreside.nl/en/insights-and-updates/tag/software-engineering)

### Related Articles

##### [![Unlock efficient, scalable service communication with RabbitMQ](https://share.foreside.nl/hs-fs/hubfs/blog-post-rabbit-mq.jpg?width=520&height=294&name=blog-post-rabbit-mq.jpg) TypeScript • 20-02-2024 Unlock efficient, scalable service communication with RabbitMQ 4 min read](https://share.foreside.nl/en/insights-and-updates/decoupled-integration-architecture-with-rabbitmq)

##### [![Improved QA starts with Test process assessments](https://share.foreside.nl/hs-fs/hubfs/Maikel%20Verbeek%20QA%20testing.png?width=520&height=294&name=Maikel%20Verbeek%20QA%20testing.png) testmanagement • 13-08-2024 Improved QA starts with Test process assessments 4 min read](https://share.foreside.nl/en/insights-and-updates/test-process-assessments)

[![Logo Foreside IT, Eindhoven](https://share.foreside.nl/hs-fs/hubfs/foreside-logo-200x50.png?width=197&height=50&name=foreside-logo-200x50.png)](https://share.foreside.nl/en/insights-and-updates)

 Taking IT Forward

- [Insights & Updates](https://share.foreside.nl/en/insights-and-updates)
- [Foreside website](https://foreside.nl)

©2026 Foreside B.V. All rights reserved. [Privacy Policy](https://www.foreside.nl/policies/privacy-policy)

- <https://www.linkedin.com/company/foreside/>
- <https://twitter.com/Foreside_IT>
- <https://www.instagram.com/foreside_it/>

```json
{
  "@context" : "https://schema.org",
  "@type" : "BlogPosting",
  "author" : {
    "@type" : "Person",
    "name" : "Ögeday Öztoprak",
    "url" : "https://share.foreside.nl/en/insights-and-updates/author/ögeday-öztoprak"
  },
  "dateModified" : "2024-02-27T12:29:52.297Z",
  "datePublished" : "2024-02-20T07:55:01.000Z",
  "headline" : "Adding TypeScript to my skills to become a Full Stack Developer",
  "image" : [ "https://share.foreside.nl/hubfs/blog-post-ogeday-ts.jpg" ],
  "mainEntityOfPage" : {
    "@id" : "https://share.foreside.nl/en/insights-and-updates/adding-typescript-to-my-skills-to-become-a-full-stack-developer",
    "@type" : "WebPage"
  },
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "url" : "https://share.foreside.nl/hubfs/foreside-logo.png"
    },
    "name" : "Foreside B.V."
  }
}
```