Enterprise Search for a Riga Software Company
Designed and built a clickable enterprise search product for a 600-person Riga software company: one search box over Google Drive, Notion, Jira, Slack, GitHub, HubSpot and the HR policy site, with every result filtered by what the person can already open in the source tool, extractive answer cards that always link to the source, review nudges for content owners and an admin view of connector health and index freshness.
Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.
Search home, search results, My content, the admin overview and connector detail. Each of the 7 connectors opens its own detail page with overview, scope, permissions mapping, runs and settings tabs.
Drive, Notion, Jira, Slack, GitHub, HubSpot and the HR policy site. Every result carries its permission basis, such as a Notion teamspace, a Jira project role or a Slack channel, shown in the Why this result panel.
Trending items and related searches appear only once at least 5 different people opened or ran them, and counts are rounded to the nearest 5. An owner's document opened by fewer people shows "fewer than 5".
31 indexed items across all 7 sources in Latvian, English and Estonian, 14 staff profiles, 98 sync runs, 12 owned documents with 8 review nudges and 2 best bets.
Vējzeme grew from 150 to 600 people in five years and its knowledge ended up in seven tools, each with its own search and none able to see the others. An internal survey found engineers spent about 40 minutes a day looking for things, new starters asked the same questions in #help-general every week, three customer incident reviews cited an outdated runbook, and an earlier shared Drive index exposed a folder of salary review notes to the whole company because it ignored sharing settings.
Lukturis gives every member of staff one search box across all seven tools, filtered at query time by each source's own permissions. It corrects Latvian typed without diacritics, applies synonyms in both languages, shows best bets from knowledge leads and short answer cards copied word for word from one source, asks owners to review stale documents, and gives IT a live view of connector health and freshness.
Enterprise search over a company's own tools has to be more useful than each tool's search and never less private. At Vējzeme the index holds staff messages, customer records from banks and payment institutions, and HR documents, and the search log is personal data about the person searching.
Drive sharing, Notion page permissions, Jira permission schemes and issue security, Slack channel membership, GitHub repository access, HubSpot record visibility and the policy site's groups all express access differently. Lukturis must grant nothing of its own, filter titles and snippets like content, and hide any item whose permissions cannot be resolved.
Under GDPR and Latvian practice, recording what employees search for can amount to monitoring. Queries tied to a person are kept for 30 days by Vējzeme's policy, analytics never show who searched for what, and a query appears in any list only once 5 different people have run it.
Semantic ranking and answer card selection use third-party models, which makes Vējzeme a deployer under the EU AI Act. Answer cards had to be passages lifted from one source with a link, and the expert finder had to show evidence rather than scores so it cannot be used to rate staff.
Vējzeme's bank and payment customers expect DORA-grade commitments on data access, so customer-restricted projects are kept out of previews and answer cards. Credentials found in docs, issues or pull requests must be dropped before indexing and reported to security, never stored.
Mapped 7 user roles from staff and content owners to the DPO, security and auditors, 28 screens across search, knowledge and admin plus a Slack app, and the data model for connectors, sync runs, indexed items, principals, chunks, expert topics, search events, aggregated query stats, nudges, exclusion rules and secret findings. Wrote down the rules the design follows: GDPR and the Latvian Personal Data Processing Law, employee monitoring limits, the EU AI Act deployer duties, DORA customer commitments and ISO/IEC 27001 evidence.
Built 5 key screens on a production dashboard kit: search home with recent and trending items, search results with spelling correction, synonyms, source tabs, filters, best bet, answer card with feedback, duplicate grouping and the Why this result and preview panels, My content with still accurate, hand over, snooze and archive actions, the admin overview with KPIs, connector health and freshness against target, and connector detail with sync, re-index and reconnect. All actions run on local state.
Connectors for the Google Drive, Notion, Jira, Slack, GitHub and HubSpot APIs and a crawler for the policy site, Google Workspace sign-in and group sync, hybrid keyword and vector search on OpenSearch with a Latvian analyser, multilingual embeddings and re-ranking, secret scanning in the indexing pipeline, the Slack app, EU hosting in Stockholm with Frankfurt backups and an append-only audit log. Plus the remaining screens: people finder, privacy and history, knowledge lead tools and the other admin pages.
The result count reads "results you can open", tab counts include only visible items, and Why this result names the group, teamspace or channel that grants access. A customer-restricted HubSpot deal appears as a link with no preview or answer card.
A card holds up to 3 sentences copied from one document, labelled "Passage from Notion, picked by AI ranking. Always check the source", with the owner, last updated date, a Verified by owner badge, Open source as the main button and helpful, not helpful or wrong feedback.
Typing atvalinajums without diacritics shows results for atvaļinājums, synonyms such as annual leave, PTO and vacation are applied and shown, and Latvian, English and Estonian documents rank together with a language badge on each.
My content lists each owner's overdue documents oldest first with days overdue, review rule, opens in 90 days and outdated reports. Still accurate, Update now, Hand over, Snooze and Archive in search act there, and Lukturis never edits or deletes anything in the source.

Designed and built a clickable internal admin console for an Athens SaaS company that sells housekeeping software to EU hotels: find any tenant and see everything about it on one page, enter a customer's workspace only with their consent, work GDPR data requests on the clock, and give staff elevated rights only for a limited window with someone else's approval.

Designed and built a clickable approval workflow engine for a public university in Accra: request forms routed by amount, cost centre and the department hierarchy, an approvals inbox and two-tap decision screen designed phone first, delegation and out-of-office cover, and a route and history on every request that shows who approved what, and when.
Enterprise Software Engineering - Human + AI
Contact Us
© 2026 - Copyright. All Rights reserved Oceanlab
Location
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
Enterprise Software Engineering - Human + AI
Contact Us
Locations
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
© 2026 - Copyright. All Rights reserved Oceanlab