Search
Frontend Developer (w/m/x) - TypeScript/React

Frontend Developer (w/m/x) - TypeScript/React

locationWien, Österreich
VeröffentlichtVeröffentlicht: 10.11.2025
IT / EDV
Unser Kunde ist ein innovatives Technologieunternehmen, das sich auf moderne Softwarelösungen im Finanzbereich spezialisiert hat. Der Kunde arbeitet international und legt großen Wert auf Qualität, Kreativität und nachhaltige Produktentwicklung.
  • Frontend-Entwicklung mit Fokus auf ein neues, modernes Finanzprodukt
  • Laufende Weiterentwicklung und Optimierung bestehender Frontend-Funktionen (Strategie-Visualisierungen und AI-Features)
  • Zusammenarbeit mit internationalen Entwickler-Teams in einem agilen Umfeld
  • Enge Abstimmung mit Designern, um nutzerfreundliche und ansprechende Interfaces sicherzustellen
  • Arbeiten mit modernen Web-Technologien wie TypeScript, React, JavaScript, HTML und CSS
  • Berufserfahrung in der Frontend-Entwicklung mit React
  • Erfahrung in der Arbeit an größeren Frontend-Anwendungen, insbesondere in den Bereichen Performance-Profiling und Debugging
  • Neugierde und die Bereitschaft, Verantwortung zu übernehmen – inklusive wirtschaftlichem Denken und Blick über den Tellerrand hinaus
  • Sehr gute Englisch- und Deutschkenntnisse in Wort und Schrift
:root { --background: 0 0% 100%; --foreground: 0 0% 3.9%; --light: 210, 20%, 98%; --muted: 0 0% 96.1%; --muted-foreground: 0 0% 45.1%; --popover: 0 0% 100%; --popover-foreground: 0 0% 3.9%; --card: 0 0% 100%; --card-foreground: 0 0% 3.9%; --border: 0 0% 89.8%; --input: 0 0% 89.8%; --primary: 354 95% 59%; --primary-foreground: 0 0% 98%; --secondary: 0 0% 96.1%; --secondary-foreground: 0 0% 9%; --accent: 0 0% 96.1%; --accent-foreground: 0 0% 9%; --destructive: 0 86% 97%; --destructive-foreground: 0 63% 31%; --destructive-light: 0 93% 94%; --success: 138 76% 97%; --success-foreground: 144 61% 20%; --success-light: 141 84% 93%; --info: 204, 100%, 97%, 1; --info-foreground: 202, 80%, 24%; --info-light: 204, 94%, 94%, 1; --warning: 33, 100%, 96%, 1; --warning-foreground: 15, 75%, 28%; --warning-light: 34, 100%, 92%, 1; --ring: 0 0% 3.9%; --radius: 0.5rem; --chart-1: 12 76% 61%; --chart-2: 173 58% 39%; --chart-3: 197 37% 24%; --chart-4: 43 74% 66%; --chart-5: 27 87% 67%; }@font-face { font-family: "Lineto Circular"; src: url("https://www.epunkt.com/assets/images/jobad-assets/lineto-circular-book…") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }@font-face { font-family: "Lineto Circular"; src: url("https://www.epunkt.com/assets/images/jobad-assets/lineto-circular-mediu…") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }@font-face { font-family: "Lineto Circular"; src: url("https://www.epunkt.com/assets/images/jobad-assets/lineto-circular-bold…") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; }.ep_job_body { font-family: "Lineto Circular", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Noto Sans, Ubuntu, Cantarell, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji"; font-size: 16px; font-weight: 400; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; background-color: hsl(var(--background)); color: hsl(var(--foreground)); /* h1, h2, h3, h4, h5, h6, p { margin: 0; }*/ }.ep_job_container { max-width: 1080px; margin-left: auto; margin-right: auto; padding-left: 1rem; padding-right: 1rem; }.ep_job_header_row { display: flex; justify-content: space-between; gap: 2rem; /* gap-4 */ }.ep_job_left_col { display: flex; flex-direction: column; justify-content: space-between; gap: 0.75rem; /* gap-3 */ }.ep_job_title_block { display: flex; flex-direction: column; gap: 0.75rem; /* gap-3 */ }.ep_job_title { font-size: 1.875rem; /* text-3xl */ line-height: 2.25rem; font-weight: 700; /* font-bold */ margin: 0; }.ep_job_subtitle { width: 100%; font-size: 1rem; line-height: 1.5rem; font-weight: 500; /* font-medium */ margin: 0; }.ep_job_meta_grid { display: grid; grid-template-columns: 1fr; /* base grid */ gap: 0.5rem; /* gap-2 */ }.ep_job_meta_item { display: flex; gap: 0.5rem; /* gap-2 */ margin: 0; }.ep_job_icon { color: hsl(var(--primary)); height: 1.25rem; /* h-5 */ width: 1.25rem; /* w-5 */ flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; }.ep_job_apply_link { display: block; width: 100%; margin-top: 1rem; /* mt-4 */ }.ep_job_button { display: inline-flex; /* inline-flex */ align-items: center; /* items-center */ justify-content: center; /* justify-center */ gap: 0.5rem; /* gap-2 */ white-space: nowrap; /* whitespace-nowrap */ border-radius: 0.375rem; /* rounded-md */ font-size: 0.875rem; /* text-sm */ line-height: 1.25rem; font-weight: 500; /* font-medium */ background-color: hsl(var(--primary)); /* bg-primary */ border: 1px solid hsl(var(--primary)); /* border, border-primary */ color: hsl(var(--primary-foreground)); /* text-primary-foreground */ height: 2.5rem; /* h-10 */ padding: 0.5rem 1rem; /* py-2 px-4 */ width: 100%; /* w-full */ cursor: pointer; /* cursor-pointer */ transition: background-color 150ms linear, color 150ms linear, border-color 150ms linear; /* transition-colors */ text-decoration: none; box-sizing: border-box; }.ep_job_button:hover { background-color: hsl(var(--primary) / 0.9); /* hover:bg-primary/90 */ text-decoration: none; }.ep_job_button:focus-visible { outline: none; /* focus-visible:outline-none */ box-shadow: 0 0 0 2px hsl(var(--ring)),0 0 0 4px hsl(var(--background)); /* focus-visible:ring-2 & ring-offset-2 */ }.ep_job_button:disabled { pointer-events: none; /* disabled:pointer-events-none */ opacity: 0.5; /* disabled:opacity-50 */ }.ep_job_button svg { /* [&_svg]:... */ pointer-events: none; height: 1rem; /* size-4 */ width: 1rem; flex-shrink: 0; }.ep_job_side_image_wrap { display: none; /* hidden */ width: 50%; /* w-1/2 */ max-width: 24rem; /* max-w-96 */ }.ep_job_image { max-width: 100%; height: auto; }.ep_job_rounded_lg { border-radius: 0.5rem; /* rounded-lg */ }.ep_job_divider { margin-top: 1.5rem; /* my-6 */ margin-bottom: 1.5rem; border: none; border-top: 1px solid hsl(var(--border)); }.ep_job_section_title { font-size: 1.25rem; /* text-xl */ line-height: 1.75rem; font-weight: 500; /* font-medium */ margin-bottom: 0.75rem; /* mb-3 */ }.ep_job_benefits_grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); /* grid-cols-2 */ gap: 0.75rem; /* gap-3 */ }.ep_job_benefit_item { display: flex; /* flex */ gap: 0.75rem; /* gap-3 */ align-items: center; /* items-center */ overflow: hidden; /* overflow-hidden */ }.ep_job_benefit_icon_circle { border-radius: 9999px; /* rounded-full */ background-color: hsl(var(--primary)); /* bg-primary */ height: 2rem; /* h-8 */ width: 2rem; /* w-8 */ display: flex; align-items: center; /* items-center */ justify-content: center; /* justify-center */ flex-shrink: 0; /* flex-shrink-0 */ }.ep_job_benefit_icon_img { height: 2rem; /* h-8 */ width: 2rem; /* w-8 */ display: inline-block; /* inline-block */ }.ep_job_truncate { overflow: hidden; /* overflow-hidden */ white-space: nowrap; /* whitespace-nowrap */ text-overflow: ellipsis; /* truncate */ }.ep_job_range_wrapper { width: 100%; /* w-full */ position: relative; /* relative */ }.ep_job_range_track { width: 100%; /* w-full */ height: 0.5rem; /* h-2 */ background-color: hsl(var(--primary) / 0.4); /* bg-primary/40 */ border-radius: 9999px; /* rounded-full */ }.ep_job_range_active { position: absolute; /* absolute */ top: 0; bottom: 0; /* top-0 bottom-0 */ margin-top: auto; margin-bottom: auto; /* my-auto */ height: 0.5rem; /* h-2 */ background-color: hsl(var(--primary)); /* bg-primary */ border-radius: 9999px; /* rounded-full */ }.ep_job_badge { display: inline-flex; /* inline-flex */ align-items: center; /* items-center */ border-radius: 9999px; /* rounded-full */ border: 1px solid hsl(var(--primary)); /* border, border-primary */ padding: 0.125rem 0.625rem; /* py-0.5 px-2.5 */ font-size: 0.75rem; /* text-xs */ line-height: 1rem; font-weight: 500; /* font-medium */ transition: color 150ms linear, background-color 150ms linear, border-color 150ms linear; /* transition-colors */ height: 1.5rem; /* h-6 */ position: absolute; /* absolute */ top: 0; bottom: 0; /* top-0 bottom-0 */ margin-top: auto; margin-bottom: auto; /* my-auto */ color: hsl(var(--primary)); /* text-primary */ background-color: hsl(var(--primary-foreground)); /* bg-primary-foreground */ }.ep_job_badge:focus { outline: none; /* focus:outline-none */ box-shadow: 0 0 0 2px hsl(var(--ring)),0 0 0 4px hsl(var(--background)); /* focus:ring-2 focus:ring-offset-2 */ }.ep_job_mt_4 { margin-top: 1rem; }.ep_job_link_primary { color: hsl(var(--primary)); /* text-primary */ text-decoration: underline; /* underline */ }.ep_job_aspect_video { aspect-ratio: 16 / 9; }.ep_job_media_full { width: 100%; height: 100%; }.ep_job_org_row { width: 100%; display: flex; /* flex */ justify-content: space-between; /* justify-between */ gap: 0.75rem; /* gap-3 */ }.ep_job_org_text { width: 100%; /* w-full */ display: flex; /* flex */ flex-direction: column; /* flex-col */ justify-content: space-between; /* justify-between */ gap: 0.75rem; }.ep_job_org_image { display: none; /* hidden */ width: 33.333333%; /* w-1/3 */ max-width: 24rem; /* max-w-96 */ }/* Content text styles (formerly .content__text) */ .ep_job_content_text ul { padding-left: 1.5rem; /* pl-6 */ padding-bottom: 0.75rem; /* pb-3 */ }.ep_job_content_text li { padding-left: 0.5rem; /* pl-2 */ list-style-type: disc; /* list-disc */ list-style-position: outside; line-height: 1.5rem; list-style-image: url('https://epunkt.dotbite.at/build/assets/list-bullet-Np-vTlJt.svg'); }.ep_job_content_text b, .ep_job_content_text strong { font-weight: 700; /* font-bold */ }.ep_job_content_text h1 { font-size: 1.875rem; /* text-3xl */ line-height: 2.25rem; }.ep_job_content_text h2 { font-size: 1.5rem; /* text-2xl */ line-height: 2rem; }.ep_job_content_text h3 { font-size: 1.25rem; /* text-xl */ line-height: 1.75rem; }.ep_job_content_text p { margin-bottom: 0.25rem; /* mb-1 */ margin-top: 0; line-height: 1.5rem; }.ep_job_application_note { font-size: 0.875rem; /* text-sm */ line-height: 1.25rem; font-weight: 400; /* font-normal */ color: hsl(var(--muted-foreground)); /* text-muted-foreground */ }/* Info Card Styles */ .ep_job_info_card { width: 100%; background-color: hsl(var(--card)); border: 1px solid hsl(var(--border)); border-radius: 0.5rem; margin-bottom: 1rem; }.ep_job_info_content { padding: 1.5rem; display: flex; flex-direction: column; gap: 1.25rem; }.ep_job_info_content hr { margin: 0; border: none; border-top: 1px solid hsl(var(--border)); }.ep_job_recruiter_section { display: flex; align-items: center; justify-content: flex-start; width: 100%; gap: 0.75rem; }.ep_job_avatar { height: 4rem; width: 4rem; border-radius: 9999px; overflow: hidden; background-color: hsl(var(--muted)); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }.ep_job_avatar img { height: 100%; width: 100%; object-fit: cover; }.ep_job_avatar_fallback { font-size: 1.875rem; font-weight: 700; color: hsl(var(--primary)); }.ep_job_recruiter_info { flex: 1; }.ep_job_recruiter_link { font-weight: 500; display: flex; gap: 0.5rem; align-items: center; color: hsl(var(--foreground)); text-decoration: none; }.ep_job_recruiter_link:hover { text-decoration: underline; }.ep_job_recruiter_position { font-size: 0.875rem; line-height: 1.25rem; color: hsl(var(--muted-foreground)); }.ep_job_card_title { text-align: center; font-size: 1.5rem; /* text-2xl */ line-height: 2rem; font-weight: 500; /* font-medium */ margin: 0; }.ep_job_info_list { display: flex; flex-direction: column; gap: 0.625rem; }.ep_job_info_item { display: flex; gap: 0.5rem; align-items: flex-start; }.ep_job_actions { display: flex; flex-direction: column; gap: 0.5rem; }.ep_job_button_outline { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; white-space: nowrap; border-radius: 0.375rem; font-size: 0.875rem; line-height: 1.25rem; font-weight: 500; background-color: hsl(var(--background)); border: 1px solid hsl(var(--border)); color: hsl(var(--foreground)); height: 2.5rem; padding: 0.5rem 1rem; width: 100%; cursor: pointer; transition: background-color 150ms linear, color 150ms linear, border-color 150ms linear; text-decoration: none; box-sizing: border-box; }.ep_job_button_outline:hover { background-color: hsl(var(--muted)); text-decoration: none; }.ep_job_actions a.ep_job_button, .ep_job_actions a.ep_job_button_outline { text-decoration: none; display: flex; width: 100%; }.ep_job_actions .ep_job_button, .ep_job_actions .ep_job_button_outline { width: 100%; }.ep_job_layout { display: flex; flex-direction: column; gap: 1rem; }.ep_job_main_content { flex: 1; min-width: 0; }.ep_job_sidebar { width: 100%; }/* Responsive breakpoints (match Tailwind defaults) */ @media (min-width: 768px){.ep_job_subtitle { width: 66.666667%; }.ep_job_meta_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }.ep_job_apply_link { width: fit-content; margin-top: 0; }.ep_job_button { width: fit-content; }.ep_job_benefit_icon_circle { height: 2.5rem; width: 2.5rem; }.ep_job_benefit_icon_img { height: 2.5rem; width: 2.5rem; }.ep_job_benefits_grid { gap: 1.5rem; }.ep_job_info_card { width: 23rem; }.ep_job_sidebar { width: 23rem; }}@media (min-width: 1024px){.ep_job_side_image_wrap { display: block; }.ep_job_benefits_grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }.ep_job_org_text { width: 50%; }.ep_job_org_image { display: block; }.ep_job_layout { flex-direction: row; }.ep_job_info_card { position: sticky; height: fit-content; }}

Frontend Developer (w/m/x) - TypeScript/React

Entwickle innovative Finanztools im Frontend – mit modernsten Technologien, internationaler Zusammenarbeit und Raum für deine Ideen.

Wien

> 4.000 €

3 Tage in der Woche

Vollzeit (ab 38 Wochenstunden) Jetzt bewerben Noch ein Klick bis zu deinem neuen Job! Bewirb dich online über unser Kandidatenportal – in wenigen Minuten ist alles erledigt.

Deine zukünftige Rolle

  • Frontend-Entwicklung mit Fokus auf ein neues, modernes Finanzprodukt
  • Laufende Weiterentwicklung und Optimierung bestehender Frontend-Funktionen (Strategie-Visualisierungen und AI-Features)
  • Zusammenarbeit mit internationalen Entwickler-Teams in einem agilen Umfeld
  • Enge Abstimmung mit Designern, um nutzerfreundliche und ansprechende Interfaces sicherzustellen
  • Arbeiten mit modernen Web-Technologien wie TypeScript, React, JavaScript, HTML und CSS

Du bietest

  • Berufserfahrung in der Frontend-Entwicklung mit React
  • Erfahrung in der Arbeit an größeren Frontend-Anwendungen, insbesondere in den Bereichen Performance-Profiling und Debugging
  • Neugierde und die Bereitschaft, Verantwortung zu übernehmen – inklusive wirtschaftlichem Denken und Blick über den Tellerrand hinaus
  • Sehr gute Englisch- und Deutschkenntnisse in Wort und Schrift

Das Besondere an dieser Position

  • Flexible Arbeitszeiten und Home Office Möglichkeit
  • Werde Teil eines innovativen Teams, das seine Leidenschaft in der TypeScript/JavaScript Entwicklung gefunden hat
  • Zusammenarbeit mit weltweit führenden Unternehmen
  • Arbeit mit modernen Technologien, hohes Lernpotential

Benefits

Barrierefreiheit Essenszuschuss Flexible Arbeitszeiten Gute Anbindung Handy (zur Privatnutzung) Jahreskarte Kein All-In Kein Dresscode Laptop (zur Privatnutzung) Moderne Büro Öffentliche Erreichbarkeit Vertrauensarbeitszeit

Gehaltsspanne

4.000 € 5.500 €

Das Gehalt liegt je nach Qualifikation & Erfahrung zwischen 4.000 € und 5.500 € brutto / Monat (auf Vollzeitbasis). Brutto Netto Rechner

Das Unternehmen

Unser Kunde ist ein innovatives Technologieunternehmen, das sich auf moderne Softwarelösungen im Finanzbereich spezialisiert hat. Der Kunde arbeitet international und legt großen Wert auf Qualität, Kreativität und nachhaltige Produktentwicklung. Jetzt bewerben Nadine Hafner Recruiting Partner IT

Frontend Developer (w/m/x) - TypeScript/React

Wien > 4.000 € 3 Tage in der Woche Vollzeit (ab 38 Wochenstunden) Jetzt bewerben Ansprechperson kontaktieren