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
- Design, implement, and maintain the Unity/C# client responsible for map rendering, vessel visualisation, and user interaction.
- Evolve the client architecture for useability, scalability, maintainability, and testability.
- Real-time map & visualisation
- Implement performant 2D/3D map views, layers and overlays (vessels, tracks, areas, alerts).
- Handle high update rates and large numbers of objects while keeping frame rates smooth.
- Implement intuitive interaction patterns: zoom/pan, selection, context menus, filtering, etc.
- Integration with Data Screen (Angular web app)
- Work with the Unity web browser plugin to host the Angular DS within the Unity application.
- Design and maintain robust integration patterns between CS and DS (messaging, events, shared state).
- Collaborate with web engineers to ensure a cohesive user experience across both screens.
- Backend & data integration
- Consume APIs and data feeds to display vessel positions, metadata, and alerts.
- Handle network connectivity, reconnection, error reporting and graceful degradation.
- Quality, performance, and reliability
- Profile and optimise rendering and update loops (“hot” paths) for performance.
- Introduce and maintain automated tests where appropriate (unit, integration).
- Contribute to logging, diagnostics and error handling standards on the client.
- Technical leadership & collaboration
- Mentor mid-level and junior developers on Unity and C# best practices.
- Work with product and UX to refine requirements into technical designs.
- Participate in code reviews, architecture discussions, and release planning.
Core technical skills
- Strong experience with:
- Solid understanding of OOP, generics, async/await, events, interfaces.
- Writing clean, maintainable, testable code.
- Strong experience with Unity in a professional setting:
- UI systems (UGUI/UI Toolkit), scene & asset management.
- Scripting, update cycles, coroutines, input handling.
- 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.
- 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).
Be the first to know aboutnew jobs every week
Get 8 new jobs with salaries, once per week! Sign up here so you don't miss a single newsletter.