Selected work · 2026
Exail · FLS & SAMS
Defense · Naval sonar for Naval Group — mine warfare & SAS visualisation
Context
Software delivered to Naval Group through Exail — two parallel programmes on the naval sonar stack:
- FLS — mine-warfare chain: streaming sensor data, live operator displays, tight milestones.
- SAMS — SAS visualisation: legacy front-end modernisation with the project and tech leads.
This is not a startup pace. Quality gates are contractual: SonarQube thresholds, test coverage, security remediation, and release evidence are written into the delivery contract with Naval Group. Regressions are costly; compliance is part of shipping.
FLS — Industrialisation
The defining thread of my engagement was industrialising FLS — turning a critical but process-light programme into something that could deliver reliably under contract.
I contributed heavily across the full chain:
- Development process
Branching model, review rules, definition of done tied to quality gates.
- Project process
Backlog structured into Epics and stories, sprint rhythm, QA and release discipline.
- Product definition
Clarified scope with leads, translated operator needs into shippable increments.
- Process automation
Automated repetitive checks, release steps, and reporting — less manual toil before each milestone.
- CI / CD
Jenkins and Bitbucket pipeline from zero: build, test, SonarQube analysis on every merge.
- Code QA
SonarQube stood up and enforced; anomaly triage workflow; security hotspot remediation.
FLS — Quality & contractual compliance
When I joined, quality tooling was largely absent: coverage around ~20%, no SonarQube, ~800 open anomalies and 16 security hotspots.
Measurable outcomes
- Stood up SonarQube from zero and wired it into Jenkins / Bitbucket so every merge request carries auditable quality signal.
- Burned down the anomaly backlog from ~800 to ~70 — fixing, re-scoping, or closing stale items with QA sign-off.
- Cleared every security hotspot (16 → 0) with targeted refactors and dependency updates.
- Enforced release discipline across the team of 10 so each Naval Group milestone could be defended with evidence.
Runtime & integration
- gRPC — extended and hardened gRPC usage inside the application for sensor and service communication; aligned protobuf contracts with the C++ back-end team.
- Query optimisation — profiled and tightened data-fetch paths (fewer round trips, leaner payloads, better caching boundaries) so live displays stay responsive under load.
FLS — Angular modernisation
The front-end was on Angular 13. I led the migration to Angular 21:
- Signals and zoneless change detection — predictable state in streaming views, less Zone.js coupling.
- Store layer — dedicated stores for cross-screen sonar state instead of scattered RxJS subjects.
- Design system — moved the in-project component library onto the Exail group design system, aligned with the EXAIL 5 brand chart, so FLS shares tokens and primitives with sister programmes.
SAMS — Front-end & design system
On the SAS visualisation axis, I coordinated with the project and tech leads to modernise the legacy front-end and authored the EXAIL 5 design-system chart in Figma.
Test strategy on the targeted perimeter moved from ~0% to ~95% coverage (Playwright + unit tests).
Constraints
Incident response happens in hour-long bursts; interfaces must preserve spatial memory and tolerate keyboard-first flows.
Long sessions break when the UI forces re-discovery — keep landmarks stable and motion honest.
Interface
Dense tables stayed readable via disciplined hierarchy, restrained motion keyed to material state transitions, and minimal chrome between signal and detail panes.

Impact
Naval Group receives evidence-backed releases instead of best-effort drops. Operators hold context through long triage windows. Engineering runs on industrialised rails — CI, QA, and a modern front-end stack that can absorb the next Angular train without another multi-year cliff.
Fullstack Engineer · Freelance