Senior Software Engineer - Universal Search
- Opened · 30d
- +4
- Closed · 30d
- −1
- Opened · 7d
- +1,2207% of open
- All software engineering
- 75,428open
Applicants must be authorized to work for any employer in the country in which the role is being hired. We are unable to sponsor or take over sponsorship of an employment visa at this time.
Mark43’s mission is to empower communities and their governments with new technologies that improve safety and quality of life for all. We build powerful, scalable, and elegant software that sets a new standard for the tools on which first responders rely. Our users are diverse, and we are committed to embracing diversity of thought and experience within our team.
We are looking for an experienced Senior Software Engineer - Universal Search to lead the next phase of our third-party search and data integration platform at Mark43. In this role, you will own some of the most complex and impactful technical initiatives within the Universal Search domain, building and scaling the systems that power fast, accurate, secure access to critical data across our RMS, CAD, and analytics products. You will drive architecture across service boundaries, shape platform direction with cross-functional partners, and raise technical standards for distributed systems, real-time indexing, authorization-aware retrieval, and search reliability in support of life-saving decision-making for public safety users.
What You'll Do
If you were part of our team last week, you might have:
- Led the design of a new external provider integration, such as a UK PNC connection or a commercial person-search API. You worked through authentication, request mapping, partial and error responses, and result normalisation, then wrote it up as a design doc and spec before breaking it into deliverable tasks.
- Evolved our real-time query pipeline: the Lambda functions that route queries, and the WebSocket layer that streams results to users. You improved how query state, read status and partial results reach CAD and RMS clients.
- Extended our configuration-driven platform. That means versioned, per-department configurations, bundles and rule handlers that let us onboard a new agency or state system without one-off code, and promote those configurations safely across environments.
- Reviewed designs and pull requests across the Java services, Lambda functions and React micro-frontend. You gave clear, high-impact feedback on resilience, data handling and contract design.
- Coordinated a release spanning several services and product teams (CAD, RMS, OnScene), managing feature flags, dependencies and rollout to minimise customer impact.
- Improved observability: propagated correlation and trace IDs across service and provider boundaries, added Datadog metrics and alerts, and made sure no PII or criminal justice data leaks into logs.
- Mentored engineers through ambiguous technical decisions and helped the team make effective, safe use of AI-assisted development and review tooling.
- Took part in on-call, diagnosed a spike in failed provider queries, led the Root Cause Analysis (RCA), and drove follow-up improvements to resilience, alerting and runbooks.
What You'll Need
We are looking for a senior engineer with 8+ years of professional software engineering experience. You should be able to lead large, ambiguous initiatives on your own, influence decisions beyond your immediate team, and take strong ownership in a distributed, integration-heavy environment.
Must Haves:
- Strong proficiency in modern Java (17+, ideally 21) and Spring Boot, plus working full-stack skills in React and TypeScript, and a track record of production-ready, well-tested, maintainable code.
- Significant experience integrating with third-party systems over varied protocols and formats, such as REST, SOAP/XML and message queues, including handling unreliable upstreams, partial results and inconsistent data.
- Experience building real-time systems with WebSockets: connection lifecycle and session management, scaling across multiple instances, reconnection and delivery guarantees, and pushing live updates to web and mobile clients.
- Hands-on experience with AWS (Lambda, Secrets Manager, AppConfig, DynamoDB, S3, IAM, CloudWatch), relational databases (MySQL) and caching (Redis).