Back to jobs

Senior Software Engineer \ Search Engineer (Elasticsearch & Vector Search)

Seeking AlphaRemote (Poland)Posted 1w ago
Senior Software Engineer - Python/FastAPI
Full Time
Remote
Craft my tailored resume free

Free to start · No card

Job description

Description

Join a Company That Invests in You

Seeking Alpha is the world’s leading community of engaged investors. We’re the go-to destination for investors looking for actionable stock market opinions, real-time market analysis, and unique financial insights. At the same time, we’re also dedicated to creating a workplace where our team thrives. We’re passionate about fostering a flexible, balanced environment with remote work options and an array of perks that make a real difference.

Here, your growth matters. We prioritize your development through ongoing learning and career advancement opportunities, helping you reach new milestones. Join Seeking Alpha to be part of a company that values your unique journey, supports your success, and champions both your personal well-being and professional goals.

What We're Looking For

Role Overview: You will take ownership of the search infrastructure for Ask Seeking Alpha — a financial intelligence platform powered by LLMs. Your main goal is to ensure our AI agents can find the exact financial data they need (articles, transcripts, news) in milliseconds. You will work on the Retrieval layer of our RAG architecture, combining traditional text search with modern vector search techniques.

Tech Stack: Elasticsearch (v8+), Python (FastAPI, Asyncio), OpenAI Embeddings, LangChain, LangSmith.

What You'll Do

  • Search Engine Development: Design and implement Hybrid Search strategies. You will figure out how to best combine "keyword matching" (finding specific tickers like 'AAPL') with "semantic search" (finding concepts like 'revenue growth').
  • Relevance Tuning: You are responsible for the quality of search results. You will build systems to measure and improve how well the search engine answers user queries (using tools like LangSmith).
  • Vector Search & RAG: Manage the integration of OpenAI embeddings into Elasticsearch. You will solve challenges related to indexing long documents (e.g., earnings transcripts) so the AI retrieves only the most relevant parts.
  • Performance Optimization: Optimize Elasticsearch queries and index settings to ensure low latency, even for complex queries with many filters.
  • Python Backend: Develop and maintain the Python services that build queries and process results. We use FastAPI and Asyncio heavily.

Requirements

  • Elasticsearch Expert: 5+ years of experience working with Search Engines in production. You understand how indices, analyzers, and mappings work "under the hood."
  • Search Theory: You understand the difference between Lexical Search (keywords) and Vector Search (meaning), and know when to use which.
  • Python Proficiency: Strong experience with Python 3.10+. You are comfortable writing asynchronous code (async/await) and building APIs.
  • Data Engineering: Experience designing data schemas for search (how to structure JSON documents for efficient retrieval).

Nice to Have

  • Experience building RAG (Retrieval-Augmented Generation) pipelines.
  • Familiarity with LangChain or similar LLM frameworks.
  • Experience with Evaluation tools (like LangSmith) to test search quality automatically.
  • Background in Finance (understanding tickers, earnings calls, etc.).

Originally posted on Himalayas

Prepare your application

Use the description above to assess your fit for Seeking Alpha. This checklist is guidance from Resumize, rather than additional requirements from the employer. Imported listings can be shortened or change after collection, so confirm the complete description and current availability before sending an application.

Match requirements to evidence

Identify the responsibilities and skills the employer explicitly names. For each important requirement, choose one example from your work, education, training, or projects. Explain what you did, how you did it, and what changed as a result. Include a measurable outcome when you can support it. If you lack a requirement, describe related experience accurately instead of adding an unfamiliar skill to your resume.

Put the most relevant examples near the top of your resume. Keep job titles, dates, qualifications, and contact details consistent across your application materials. Use the employer’s terminology when it describes your experience accurately; a copied list of keywords does not explain your contribution. A short, specific bullet is easier to review than a paragraph that mixes several unrelated duties.

Check the working arrangement

Confirm the location, schedule, employment type, and any eligibility requirements on the employer’s site. A remote label does not establish worldwide eligibility or flexible hours. If compensation, benefits, equipment, travel, or contract duration are missing from this listing, write down your questions for the recruiter. Do not assume details from another opening at the same company apply to this role.

Review before submitting

Follow the employer’s requested file format and application instructions. Open your exported resume and check that its text is selectable, its sections read in order, and its links work. Proofread names, dates, and contact information. Share confidential work samples only when you have permission, and use an anonymized example when necessary.

Submit through a trusted employer or recruiting destination. If the original listing has disappeared, search the employer’s careers page for the title rather than assuming the vacancy remains open. Save the application date, job reference, and the version of your resume you sent. Those details help you prepare for a later conversation and avoid submitting conflicting information through several job boards.

Review your resume for writing and readability feedback, or browse other openings if this opportunity is unavailable.