Principal Software Engineer - Search
209 S. LaSalle 8th Floor Chicago, IL 60601
We are is seeking a Principal Software Engineer - Search to provide technical leadership to create a new search platform in our enterprise Venue Virtual Data Room. You will lead a team to create a scalable solution in Azure to search millions of documents at low-latency to help our clients find that needle in a haystack relative to their needs and interests.
What you will do
- Be a hands-on contributor to the design and implementation of our new search platform from the infrastructure layer up to the API.
- Performance testing and engineering to ensure the platform consistently scales to meet geographically dispersed requests in smart and cost-effective ways.
- Serve as a subject matter expert for the system and in best practice distributed systems engineering architecture, design, implementation and test.
- Lead cross-functional initiatives and mentor and guide engineering staff in the development of new systems and introduction of new technology.
Required Experience and Skills
- We value humility, a strong work ethic, flexibility, collaboration, technical curiosity, and constant learning.
- Success delivering projects that demonstrate prowess designing, implementing, and operating large scale, high throughput, low latency text extraction, indexing and relevancy search in Azure or AWS.
- You can go up and down the stack from deep in the infrastructure layer all the way up to the client libraries.
- Experience with small teams that move fast - all members are expected to achieve maximum results with minimal direction.
- At least 10 years of software engineering experience across multiple environments on complex distributed polyglot systems using C# / .NET, Java, Scala, and/or C++.
- Elasticsearch, Solr, and/or Lucene experience.
- Kubernetes or Azure AKS experience.
- Azure Blob storage (or similar) experience.
- Cassandra, Redis, MongoDB and/or other NoSQL data store experience.
- Cosmos DB or SQL experience.
- Familiar with ASP.NET MVC (routing, model binding, razor views)
- Object-oriented design (SOLID) principles and design patterns.
- API first design building scalable ReSTful APIs, ideally using an IDL like OpenAPI.
Nice to haves
- Experience designing a cloud-based distributed search system that indexes and searches large documents (10 MB or greater), with outliers greater than 100 MB, in a consistent and performant way.
- Tikka experience.
- You must be legally authorized to work in the US. Sponsorships are not supported at this time.
- Applications for this position from candidates not located in Chicago will be considered. However, you must be able and willing to re-locate to Chicago.