Search Developer
Save this job and keep your search organized
Create a free account to save jobs, create alerts and return to this listing from your dashboard.
By continuing, you agree to our Terms & Privacy Policy.
Eon Media is a B2B AI technology company that builds its AI products fully in-house for the broadcast and media industry. Our products help broadcasters, media companies and content owners simplify workflows, improve operational efficiency and unlock value from their video and audio archives.
Position Summary
Eon Media is seeking an experienced Search Developer on a contract basis to design, build, tune and operate the search layer behind our archive and media discovery products.
You will own how large volumes of media assets, transcripts and AI-generated metadata records are mapped, indexed, searched and ranked. This is a hands‐on engineering role for someone who understands OpenSearch from the inside: how a cluster behaves under load, why a query scores the way it does, and how to fix it when it doesn't.
Responsibilities
- Own the Search layer behind our archive and media discovery products, from cluster design to production operations.
- Model and index complex media metadata, transcripts and AI-generated data through reliable ingest pipelines.
- Improve search relevance across lexical, neural and hybrid retrieval, and prove gains with measurable relevance tests.
- Keep clusters healthy, fast and cost-efficient as data and traffic grow.
- Build the aggregations behind faceted search, filters and archive analytics.
- Document decisions and runbooks so the team can operate what you build.
Required Technical Skills
You must have deep, hands‐on knowledge in all seven areas below and be able to explain your reasoning, not just the configuration.
- Shards, segments and replicas: how they relate, how they affect search and indexing, and how to choose primary shard and replica counts.
- Node roles (cluster manager, data, ingest, coordinating, ML) and hot/warm/cold architectures.
- Cluster health maintenance: allocation awareness, unassigned shard diagnosis, disk watermarks, rebalancing and snapshot/restore.
- Index State Management (ISM), rollover, aliases and zero‐downtime reindexing.
2. Search Relevance
- BM25 scoring: term frequency, IDF, field‐length normalization, and tuning k1 and b.
- Neural and AI search: k‐NNa/vector fields, embedding models, the neural search plugin, and hybrid search with score normalization.
- Rescoring (query rescorer), function_score (decay, field_value_factor, script_score) and boosting strategies.
- Using the explain API and profile API to debug ranking; offline relevance evaluation (e.g. NDCG, MRR, precision@k).
3. Performance Optimization
- JVM heap sizing and heap pressure, garbage collection behaviour, circuit breakers and fielddata.
- Shard sizing and the cost of over‐sharding.
- Caching: node query cache, shard request cache and the OS file system cache.
- Refresh interval, flush and translog behaviour, segment merging and force merge.
- Bulk indexing tuning, thread pools, and slow logs for diagnosis.
4. Mapping Strategies
- Explicit versus dynamic mappings, dynamic templates and strict mode.
- Nested versus object types, their query and memory implications, and when to use join or denormalization instead.
- Multi‐fields, keyword versus text, doc_values, norms and index options.
- Handling mapping changes and mapping explosion.
5. Text Analysis
- Analyzers, tokenizers, character filters and token filters, and how they combine.
- Custom analyzers for stemming, synonyms (index‐time versus search‐time), n‐grams, edge n‐grams and phonetic matching.
- Multilingual analysis.
- Testing analysis output with the _analyze API.
- Ingest pipelines and processors, including enrichment, script processors and failure handling.
- Bulk indexing design, idempotency, versioning and error handling.
- Index‐per‐tenant versus shared index designs, time‐based indices and rollover.
- Integrating indexing with upstream data and ML pipelines.
7. Aggregations
- Bucket, metric and pipeline aggregations, including nested and reverse_nested aggregations.
- Terms aggregation accuracy, shard_size, cardinality approximation and composite aggregations for pagination.
- Me