Junior Frontend Software Engineer

at N-able

Location:

Employment Type: full_time


Job Description

<strong>Why N-able</strong><br><br><p style="margin: auto 0px; padding: 0px; color: windowtext;"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">We are looking for a Junior</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;"> Frontend Software Engineer</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;"> to join our Cove Data Protection product engineering team. Cove Data Protection is a cloud-first backup solution with a multi-platform architecture, designed for managed service providers and large enterprise IT departments.</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></p><p style="margin: auto 0px; padding: 0px; color: windowtext;"> </p><p style="margin: auto 0px; padding: 0px; color: windowtext;"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">In this role, you will work with </span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">international teams</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;"> to develop Google Workspace services and help build and evolve a </span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">web-based UI</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;"> that manages thousands of backup workspaces and customers. You will tackle </span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">complex configurations, large data sets, and dynamic visualizations</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">, including tables, dashboards, and charts, making a real impact on the user experience.</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></p><p style="margin: auto 0px; padding: 0px; color: windowtext;"> </p><p style="margin: auto 0px; padding: 0px; color: windowtext;"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Our team values </span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">high-quality code, automated testing, and continuous delivery</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">, ensuring performance, maintainability, and scalability are always top priorities. You will have the opportunity to </span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">learn, experiment, and grow</span><span style="margin: 0px; padding: 0px;"> </span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">while contributing to a modern, production-grade frontend.</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></p><p style="margin: auto 0px; padding: 0px; color: windowtext;"> </p><p style="margin: auto 0px; padding: 0px; color: windowtext;"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">We are looking for a </span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">self-motivated, curious, and results-driven engineer</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;"> with </span><span style="margin: 0px; padding: 0px;">strong communication</span><span style="margin: 0px; padding: 0px;"> skills, who thrives both independently and in a distributed team environment. If you enjoy solving challenging problems, improving user experiences, and growing your skills in a fast-moving product team, this role is for you.</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></p> <br><strong>What You'll Do</strong><br><br><ul><li><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Develop and </span><span style="margin: 0px; padding: 0px;">maintain</span><span style="margin: 0px; padding: 0px;"> frontend features using Angular, TypeScript</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li><li><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Build responsive and scalable UI components for handling large data sets</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li><li><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Write and </span><span style="margin: 0px; padding: 0px;">maintain</span><span style="margin: 0px; padding: 0px;"> unit and end-to-end tests</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li><li><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Improve application performance, stability, and usability</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li><li><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Participate in code reviews and contribute to code quality standards</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li><li><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Collaborate closely with backend engineers, QA, and product stakeholders</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li><li><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Investigate, troubleshoot, and resolve frontend issues</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li></ul> <br><strong>What You'll Bring</strong><br><br><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="1" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Practical experience in frontend development</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li></ul><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="2" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Knowledge of Vanilla JavaScript (ES6+)</span></span></span></li></ul><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="3" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">TypeScript skills: generics, utility types, typing APIs, and complex data structures</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li></ul><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="4" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Understanding of Angular core concepts (Angular v17+)</span></span></span></li></ul><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="5" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Confident use of </span><span style="margin: 0px; padding: 0px; border-bottom: 1px solid transparent;">RxJS</span><span style="margin: 0px; padding: 0px;"> to manage asynchronous data flows</span></span></span></li><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="5" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Experience writing unit and end-to-end tests</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li></ul><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="7" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Solid understanding of how browsers work, including the rendering pipeline, DOM/CSSOM, event loop, networking, and client-side storage</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li></ul><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="8" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Good understanding of HTTP fundamentals and RESTful APIs</span></span></span></li></ul><ul style="margin: 0px; padding: 0px; font-family: verdana;"><li style="margin: 0px 0px 0px 24px; padding: 0px; font-size: 9pt; font-family: -apple-system-font, -apple-system-font_MSFontService, sans-serif;" aria-setsize="-1" data-leveltext="" data-font="Symbol" data-listid="2" data-list-defn-props="{"335552541":1,"335559685":720,"335559991":360,"469769226":"Symbol","469769242":[8226],"469777803":"left","469777804":"","469777815":"multilevel"}" data-aria-posinset="9" data-aria-level="1"><span style="font-family: verdana, geneva; font-size: 10pt;"><span style="margin: 0px; padding: 0px; color: #000000;" data-contrast="none"><span style="margin: 0px; padding: 0px;">Understanding of clean code principles (SOLID, KISS, DRY</span><span style="margin: 0px; padding: 0px;">, YAGNI</span><span style="margin: 0px; padding: 0px;">)</span></span><span style="margin: 0px; padding: 0px; color: #000000;" data-ccp-props="{"134233117":true,"134233118":true}"> </span></span></li></ul> <br><strong>Purple Perks</strong><br><br><ul><li><span style="font-size: 10pt; font-family: verdana, geneva;">Medical, dental and vision coverage</span></li><li><span style="font-size: 10pt; font-family: verdana, geneva;">Generous PTO and observed holidays</span></li><li><span style="font-size: 10pt; font-family: verdana, geneva;">2 Paid VoluNteer Days per year</span></li><li><span style="font-size: 10pt; font-family: verdana, geneva;">Employee Stock Purchase Program </span></li><li><span style="font-size: 10pt; font-family: verdana, geneva;">FuN-raising opportunities as part of our giving program </span></li><li><span style="font-size: 10pt; font-family: verdana, geneva;">N-ablite Learning – custom learning experience as part of our investment in you </span></li><li><span style="font-size: 10pt; font-family: verdana, geneva;">The Way We Work – our hybrid working model based on trust and flexibility</span></li></ul><p style="margin: 0px;"><span style="font-size: 10pt; font-family: verdana, geneva;">This position has a base monthly salary starting from 12,834.00 PLN gross. Actual starting pay is determined by a number of factors, including relevant skills, qualifications, and experience. This position is also eligible for a bonus.</span></p> <br><strong>About N-able</strong><br><br><p style="margin: 0px;"><span style="font-size: 10pt; font-family: verdana, geneva;">At <a href="https://www.n-able.com/" target="_blank" rel="noopener">N-able</a>, our mission is to protect businesses against evolving cyberthreats with an end-to-end cyber resilience platform to manage, secure, and recover. Our scalable technology infrastructure includes AI-powered capabilities, market-leading third-party integrations, and the flexibility to employ technologies of choice—to transform workflows and deliver critical security outcomes. Our partner-first approach combines our products with experts, training, and peer-led events that empower our customers to be secure, resilient, and successful.</span></p><p style="margin: 0px;"> </p><p style="margin: 0px;"><span style="font-size: 10pt; font-family: verdana, geneva;">#LI-KP1</span></p><p style="margin: 0px;"><span style="font-size: 10pt; font-family: verdana, geneva;"><span class="EOP SCXW156492689 BCX8" data-ccp-props="{"201341983":0,"335559739":160,"335559740":259}"><span class="ui-provider bcp bcq bcr bcs bct bcu bcv bcw bcx bcy bcz bda bdb bdc bdd bde bdf bdg bdh bdi bdj bdk bdl bdm bdn bdo bdp bdq bdr bds bdt bdu bdv bdw bdx">#LI-Hybrid</span></span></span></p>