Senior Frontend Developer (Vue 3/GIS) - Full Remote Portugal (Optional 1x/week Porto)
Senior Frontend Developer (Vue 3/GIS) - Full Remote Portugal (Optional 1x/week Porto) - HumanIT Digital Consulting | Career Page (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-WNGRBS6'); .primary-color { color: #051b19; } .bg-primary-color { background-color: #051b19; } .btn-info, .btn-info:hover { background-color: #051b19; } .btn-apply, .btn-apply:hover { background-color: #051b19 !important; border-color: #051b19 !important; } .search-form { width: fit-content; margin: 0px auto 20px; padding: 10px; width: 60%; } .select2-container { width: 100% !important; } .search-dropdown-options { position: absolute; margin: 5px -12px; width: calc(100% - 17px); border: 1px solid #cacaca; border-top: 0px; z-index: 1; background: #fff; max-height: 200px; overflow: auto; border-radius: 0px 0px 6px 6px; } .search-dropdown-options li { cursor: pointer; } .search-dropdown-options ul li:hover { background-color: #5897fb; color: white; } .search-dropdown-options label { width: calc(100% - 22px); font-size: 14px; } .search-dropdown-placeholder { font-size: 14px; margin: 3px; cursor: pointer; } .select2-container--default .select2-selection--single { height: 38px !important; } .select2-container--default .select2-selection--single { height: 38px !important; border: 1px solid #ced4da !important; } .select2-selection__arrow { height: 36px !important; } .select2-results__option { font-size: 14px; } .select2-selection__rendered { line-height: 38px !important; font-size: 14px; color: #969696; } .width-100 { width: 100%; } ::-webkit-input-placeholder { /* Chrome/Opera/Safari */ font-size: 14px; color: #969696; } ::-moz-placeholder { /* Firefox 19+ */ font-size: 14px; color: #969696; } :-ms-input-placeholder { /* IE 10+ */ font-size: 14px; color: #969696; } :-moz-placeholder { /* Firefox 18- */ font-size: 14px; color: #969696; } @media (max-width: 575px) { .search-form { width: 100%; } .display-4{ font-size: 2.5rem; } } .positions { font-size: 16px; color: #808080; } .serach_count { padding: 4px; } .empty-result { color: #808080; } .fa-chevron-right { padding: 0px 8px; }
Senior Frontend Developer (Vue 3/GIS) - Full Remote Portugal (Optional 1x/week Porto)
Porto, Portugal
Apply for Position Or refer someone
Job Openings Senior Frontend Developer (Vue 3/GIS) - Full Remote Portugal (Optional 1x/week Porto)
About the job Senior Frontend Developer (Vue 3/GIS) - Full Remote Portugal (Optional 1x/week Porto)
ABOUT THE OPPORTUNITY
Join an international technology company operating at the forefront of real-time monitoring and safety-critical systems — a domain where your code genuinely makes a difference. This is a senior individual contributor role embedded in a product team building sophisticated, data-intensive web applications that are actively used in high-stakes environments across multiple countries.
The position is fully remote with an optional once-a-week presence at their Porto office — if you're based nearby it's a nice bonus, but it's not a dealbreaker.
PROJECT & CONTEXT
You'll be working on a platform dedicated to fire monitoring and prevention, where real-time data visualization, geospatial mapping, and live data streams are core to the product — not afterthoughts. Think complex dashboards, live video feeds, interactive GIS maps, and WebSocket-driven interfaces that need to be fast, reliable, and visually sharp.
The stack is modern and opinionated: Vue 3 with Composition API, Pinia for state, Vite as the build tool, and Vuetify 3 for UI. Real-time integrations via WebSockets, MQTT over WebSocket, and video streaming (HLS/MJPEG) are part of the daily reality. The team also works with Leaflet, Mapbox, GeoJSON, and KML/KMZ for geospatial features.
This is a product that has real operational impact — and the frontend is where users live.
WHAT WE'RE LOOKING FOR (Required)
- 5+ years of professional frontend development experience
- Strong command of Vue 3 (Composition API) — you should be the person others turn to for architecture decisions
- Solid JavaScript (ES6+) fundamentals — no TypeScript required, but you write clean, maintainable JS
- Hands-on experience with Vite, Pinia, and Vuetify 3
- Experience building and integrating GIS/mapping features using Leaflet and/or Mapbox (GeoJSON, KML/KMZ)
- Comfortable with REST APIs and real-time protocols (WebSockets, MQTT over WebSocket)
- Experience with video streaming integration (HLS, MJPEG)
- Familiarity with testing tools: Vitest and/or Cypress
- CI/CD experience with GitLab and Docker
- Experience building Design System architectures and reusable component libraries
- Proven ability to optimize frontend performance at scale
- Experience with i18n, theming (dark/light mode), and refined UX implementation
- Comfortable doing code reviews and technically supporting more junior developers
- English B2+ — team communication and documentation is in English
NICE TO HAVE (Preferred)
- Experience with Angular (useful for cross-team context)
- Exposure to Flutter for any cross-platform work
- Background in monitoring systems, industrial dashboards, or safety-critical applications
- Experience working directly with product managers and UX designers in an agile environment
- Familiarity with Element Plus UI library
- Strong opinions on component API design and frontend architecture patterns
Apply for Position
Or refer someone
Share
- Line
- [ LinkedIn](https://www.linkedin.com/shareArticle?mini=true&url=https://www.careers-page.com/humanit/job/6336WW6W&title=Senior Frontend Developer (Vue 3/GIS) - Full Remote Portugal (Optional 1x/week Porto))
- X (Formerly Twitter)
- [ Email](https://www.careers-page.com/humanitmailto://?&subject=Job: Senior%20Frontend%20Developer%20%28Vue%203/GIS%29%20-%20Full%20Remote%20Portugal%20%28Optional%201x/week%20Porto%29&body=Hi there,%0D%0A %0D%0A I would like to share with you this job:%0D%0A %0D%0A https://www.careers-page.com/humanit/job/6336WW6W%0D%0A %0D%0A Best regards%0D%0A)
.redactor-styles { font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; }