Job Title: Senior Unity / C# Developer – Chart Screen (Maritime Domain Awareness)
Location: Cardiff (Hybrid) – On-site every Thursday, remote for remaining days
About Us
We build a Maritime Domain Awareness (MDA) system, used by customers to monitor and track vessels across their maritime area of interest. Our product combines a high-performance map and tracking display with powerful data, alerting, and configuration tools.
Our UI is split across two monitors:
* Chart Screen (CS). A real-time Unity/C# map view displaying vessels and other layers over a client's area of interest.
* Data Screen (DS). An Angular web app for alerts, configuration and other CRUD operations, hosted inside the Unity client via a web browser plugin.
We're now looking for a Senior Unity / C# Developer to contribute to development of the Chart Screen, alongside two other CS devs.
Role Overview
You will be one of three engineers responsible for the Chart Screen, building and evolving the Unity/C# application that renders our maritime map, vessel tracks and overlays.
You'll work closely with product, UX, the DS/web devs and also the backend devs to deliver a smooth, integrated two-screen experience, with a strong focus on performance, usability, and reliability in a real-time operational setting.
This role is ideal for someone who enjoys working on complex visual applications rather than simple business forms.
On-site requirement: You must be able to commute to our Cardiff office every Thursday (team day). The rest of the week can be remote/hybrid.
Key Responsibilities
* Jointly own the Chart Screen Unity client
o Design, implement, and maintain the Unity/C# client responsible for map rendering, vessel visualisation, and user interaction.
o Evolve the client architecture for useability, scalability, maintainability, and testability.
* Real-time map & visualisation
o Implement performant 2D/3D map views, layers and overlays (vessels, tracks, areas, alerts).
o Handle high update rates and large numbers of objects while keeping frame rates smooth.
o Implement intuitive interaction patterns: zoom/pan, selection, context menus, filtering, etc.
* Integration with Data Screen (Angular web app)
o Work with the Unity web browser plugin to host the Angular DS within the Unity application.
o Design and maintain robust integration patterns between CS and DS (messaging, events, shared state).
o Collaborate with web engineers to ensure a cohesive user experience across both screens.
* Backend & data integration
o Consume APIs and data feeds to display vessel positions, metadata, and alerts.
o Handle network connectivity, reconnection, error reporting and graceful degradation.
* Quality, performance, and reliability
o Profile and optimise rendering and update loops ("hot" paths) for performance.
o Introduce and maintain automated tests where appropriate (unit, integration).
o Contribute to logging, diagnostics and error handling standards on the client.
* Technical leadership & collaboration
o Mentor mid-level and junior developers on Unity and C# best practices.
o Work with product and UX to refine requirements into technical designs.
o Participate in code reviews, architecture discussions, and release planning.
Required Skills & Experience
Core technical skills
* Strong experience with:
o Solid understanding of OOP, generics, async/await, events, interfaces.
o Writing clean, maintainable, testable code.
* Strong experience with Unity in a professional setting:
o UI systems (UGUI/UI Toolkit), scene & asset management.
o Scripting, update cycles, coroutines, input handling.
o Performance optimisation (profilers, batching, garbage reduction).
* Experience building real-time, data-driven visual applications – e.g. games, simulation, mapping, or monitoring dashboards.
* Comfortable integrating with RESTful APIs and handling JSON/HTTP in C#.
* Experience working with Git and modern development workflows (branches, PRs, CI/CD awareness).
Architecture & design
* Ability to design clean, modular application structures (e.g. MVVM/MVC, dependency injection, event-driven architectures).
* Understanding of separation of concerns between visualisation, domain logic, and data access.
* Experience designing and maintaining public APIs / interfaces within a codebase.
Soft skills
* Able to commute to Cardiff every Thursday and work effectively with an on-site/hybrid team.
* Strong communication skills; able to explain technical trade-offs clearly.
* Comfortable taking ownership of a subsystem and driving it forward with minimal supervision.
* Proactive, pragmatic, and collaborative mindset.
Nice-to-Have (Bonus)
You don't need all of these, but experience in any of them is a plus:
* Experience with mapping / GIS / geospatial data (e.g. projections, tiles, shapefiles, vector layers).
* Experience in maritime, defence, navigation, or similar sensor/operations domains.
* Knowledge of .NET beyond Unity (e.g. services, background processes).
* Experience with inter-process communication or message buses.
* Familiarity with Angular or modern web front-end concepts (helpful for CS/DS integration).
* Experience implementing test automation for UI or visual applications.
* Experience working with real-time data feeds (e.g. radar, AIS, tracking systems).
What We Offer
* Hybrid working with a guaranteed team day in Cardiff every Thursday + free lunch with the teams.
* Opportunity to own and shape a mission-critical visual application used in real-world operations.
* Collaborative environment with engineers working across Unity, web, and backend.
* Competitive salary and benefits, commensurate with seniority and experience.