
Enable Medicine
Software Engineer Intern • Full-Stack Developer
January 2023 - August 2023 • San Francisco, CA
Overview
Worked on the company's web application that allows spatial biology researches to analyze their tissue samples. Worked full stack on the web app, building out the UI and the backend for a semantic search and an LLM powered chatbot.
Highlights
🔍 Semantic Search Engine
Built the new frontend for the search page, and helped with building the Amazon lambda function that updates the vector embeddings daily.
Features: Implemented vector embeddings and similarity search using these embeddings to find relevant results based on the meaning of the query, rather than the exact terms.
Technologies: React, GraphQL, Amazon Lambdas, Pinecone
🤖 Chatbot and Summary Bot
Developed a chatbot and added tool calling capabilities, like allowing users to ask about how to navigate the site and directly add biological samples. Added the SQL reads and writes to maintain chat history and store messages. Also created a summary bot to summarize slack threads.
Features: Experiment creation, data upload, guidance for how to use the site, slack thread summarization.
Technologies: LangChain, OpenAI, PostgreSQL
🌐 Atlas Library
Primary engineer driving the development of the Atlas Library, building the frontend for the new data visualization, connecting the existing semantic search, and adding the python backend to retrieve the data from our SQL database. Lead the bug bash and addressed bugs to push feature to production.
Features: Search interface, data visualization, data sorting
Technologies: React, TypeScript, GraphQL, SQLAlchemy, PostgreSQL
Demo

Atlas Library, a new data visualization tool

Chatbot in action
Reflections
This was my first internship at a startup, and I got very hands on experience with end-to-end web development. I learned a lot about how a business operates, its strategies for growth, and how my role as an engineer fits into it. Due to the fast paced nature and leaner team structure of a startup, I was able to also work full time with LLMs for our use cases for a month with 3 other senior engineers, which not only taught me a lot of technical skills, but also was personally very intriguing to explore the capabilities and shortcomings of LLMs.