Benchling’s 2022 Intern Spotlight

Swathi Sundar
Benchling Engineering
10 min readJan 25, 2023

--

Benchling 2022 Intern Spotlight

Benchling hosted several interns across the Engineering and Design teams this summer. They were embedded into different teams working directly alongside our full-time engineers, designers, and product managers. We’re excited to highlight the contributions of three of them, and talk about what their experience was like!

Meet our interns!

Vishal, Engineer
Jennifer, Designer
Yun, Engineer

Why Benchling?

Vishal: After working at larger software companies, I wanted to try something new. Benchling was perfect, because it was smaller, with a very different mission. My first interview question was a variant of a problem that Benchling had solved before. I hadn’t considered working in a biotech-centered software company, but my interview (and my interviewer) got me excited about solving interesting science-related problems.

Another factor in my decision was actually the previous internship blog posts (like this one!). I loved that intern projects were useful features that got shipped.

Jennifer: Benchling was a company that piqued my interest after I looked into the product. Their customers and level of impact stood out from other companies. The opportunity to build products for scientists and design in the context of the R&D industry was intriguing. The rest of the recruiting process further validated my other needs. All of the people I met during the recruiting process were kind, friendly, and passionate. The way they spoke about Benchling, their work, and their team culture motivated me to want to learn more. One key factor that led me to choose Benchling was the level of expertise and thoughtfulness of the designers I spoke to, Jia, Yi-ying (my mentor), and Tommy (my manager). I felt that the design team would not only foster a collaborative work environment but also give me plenty of guidance and room to learn and grow into a better designer.

Yun: I had a wonderful experience last summer working as a full-stack engineering intern on the Benchling Insights team and this year, I decided to return to a different team (Data Interfaces) to have a very different experience and work on new things. Benchling provided me with great opportunities to learn from amazing mentors last year and I trusted that I would learn a lot again this year by choosing to join Benchling again.

What did you work on?

Each intern spent most of their summer on a high-impact project within their team. We asked them to dive into what they built, as well as why and how.

Vishal: My intern project was called “chemical awareness for monomers.” I added chemical structure images to various parts of our sequence design tools so that chemists can better visualize their modified RNA/DNA. The most exciting part of my project was working with RDKit, an open source cheminformatics library, to connect and render nucleotide images. It was a full-stack project that touched a lot of the team’s code. I worked with new endpoints in our chemistry microservice, GraphQL resolvers, React components, with a bit of trigonometry mixed in. It was really satisfying to see my work (to show chemical structures in tooltip, while editing nucleotides, and in monomer library) released to customers.

Passenger strand of patisiran (the first siRNA drug that got FDA approval!).
I made the tooltip showing the chemical structure of one of the modified nucleotides.

My internship was rather long (16 weeks!), so I had extra time to take on a second, smaller project for my last few weeks. I mentioned to my team that I wanted more experience with backend development. They found me a relevant data model refactoring project and I got to dive deeper into Benchling’s architecture. I also learned to write database migrations, an important concept that’s often overlooked in CS classes.

Benchling’s engineering team also has a week every year called “Foundation Days” dedicated to learning and making our working environment more productive. My project that week was improving the performance of a chemical structure image generation endpoint by making it return results in bulk.

I also participated in Benchling’s annual hackathon, which was a great opportunity to work with others from other teams. As a student, I’m a teaching assistant for my university’s data visualization course, so I joined a team working on adding new chart types to Benchling’s Insights product.

Jennifer: Assigned to the Notebook team, I worked on two projects over the course of 13 weeks. For my starter project, I designed a feature that helps communicate Notebook entry export limits with users. The goals were to help remove the manual work required to support our customers’ needs to generate exports for compliance. For my second project, I built design explorations as foundation work for a highly-requested feature: template versioning, publishing, and approvals.

For customers working in validated environments where they are conducting formal controlled testing, their goal is to precisely monitor and keep track of processes. A simple definition of a process is how to manufacture something. Think of the Moderna COVID-19 vaccine — a process that would represent how a scientist makes a vaccine in the lab. In Benchling, this process is represented in the form of templates. For example, in order to produce a vaccine dose, a scientist will create an entry from a template that includes the instructions and data input fields for producing one dose of the vaccine. Benchling templates serve to standardize processes, keep records, and make scientists’ workflows more efficient by pre-populating necessary data input fields for data entry.

Now, imagine what happens when you make a change to that template. Whether it’s instructions or data fields, changes to the template may directly affect how the vaccine is produced. This is where the problem arises.

Currently, Benchling templates function similarly to regular Notebook entries. Edits made to a template are immediately saved and reflected on new instances of the template. If someone were to create an entry from a template while I’m updating that template, their entry would contain a half-finished template. Another issue is not being able to see the history of changes. Many customers have entire review processes for their templates and use Quality Management Systems to keep track of template versions. Any time an update is made, different stakeholders need to look over that update to ensure compliance. Without separate draft and publishing states, explicit versioning, or support for reviews, customers are forced to spend time creating workarounds like making folders to represent template states and conducting manual work like traversing through history timestamps. The risk of publishing unreviewed changes could have major implications like producing a defective vaccine dose from following an unreviewed procedure.

The key consideration for my explorations was how to accommodate the varying needs of our customer base. For the most part, our current templates work well in providing the flexibility they need to innovate potential solutions. The addition of template versioning and reviews could potentially create excessive overhead and friction for these customers but are necessary to align with the workflows of our customers who have stricter compliance requirements. I had to figure out a way to strike the balance of flexibility and rigidity that satisfies these varying use cases.

Through the support and patience of folks from Customer Experience, I was able to gain an extensive understanding of customer needs and use cases. I came up with multiple explorations of what these features could look like and iterated over feedback from Customer Experience and the design team. Through identifying overlaps among all customers, specifically, that template versioning is a valuable feature for the majority of customers, I used these insights to govern how to tackle the challenge of accommodating all customers. This ultimately laid the foundation for my final solution which was to support lightweight and flexible template versioning workflows while providing the option to add additional review functionality. All templates will have versioning capabilities to draft, publish, and supersede versions; only one template version can be live at any given point. The new versions tab allows users to view a template’s versions, their ownership history, review history (if applicable), and status. Leveraging Yi-ying’s work on entry review lifecycles, customers can configure template review lifecycles to conduct template reviews and approvals directly on Benchling.

The project gave me the opportunity to interview many folks from Customer Experience, learn from customers directly, and continuously validate my design iterations. The feedback I received pushed me to develop improved solutions and my own mental toolkit for navigating the problem space.

Yun: I was a software engineering intern on the Data Interfaces team on the Platform and Infrastructure pillar this year. I had the chance to work on two different projects:

  1. Automating various warehouse management operations: I worked with AWS lambdas, CloudFormation and DynamoDB to manage resources allocated to Benchling’s customer warehouses in a more automated manner. The warehouse management processes I worked on were deleting existing warehouses and modifying the IP allowlist for access.

2. Generalizing the warehouse sync pipeline to support multiple data stores (such as Postgres and Snowflake).

  • The project involved updating the metadata management system for pushing and pulling data in the sync pipeline to make it a more intuitive state management system and testing infrastructure. While working on this project, I got to learn how to write effective technical documentation and think through many coding principles while planning the project.
  • The other part of the project was refactoring the existing airflow task structure to improve sync latency and generalizing the sync pipeline to work with generalized interfaces instead of the current snowflake-specific pipeline. This was a project that involved a lot of planning and code refactoring, and it really taught me how to communicate and think each problem through before diving into code.

What was the internship like?

Vishal: My last biology class was in 9th grade, so I was a bit anxious about joining such a science-focused team. My manager assured me that she and many successful engineers on the team joined with a similar non-biochem background. As they explained, Benchling reframes biology problems as engineering problems. My team’s product manager was a great resource and helped me learn the scientific context I needed for my project. Learning biology and chemistry was a highlight of my internship experience!

Benchling uses Donut to set up random 1:1s between SF employees. Outside of engineering, I had the opportunity to meet product specialists, implementation managers, and scientific advisors throughout Benchling. One of my 1:1s later invited me to join him on a customer call. It was great to see how our customers use Benchling in practice.

Overall, Benchling was super supportive of my interests and great at matching me with a team aligned to them!

Jennifer: Due to COVID-19, I had never had an in-person internship. As someone who had only lived on the East Coast, relocating to San Francisco for three months was an adventure in itself. I was uncertain and curious about working in the office, making new friends, and being comfortable in such an unfamiliar space. All those concerns were washed away a week into the internship because I had already met an incredibly welcoming, smart, and fun cohort of interns, designers, and engineers that made me feel excited to be in the office.

The office perks of free catered lunch every day to snacks and drinks on each floor always fostered funny to deeper conversations with my peers and team. My design intern buddy, Boyang, and I clicked instantly and not only relied on each other for unfiltered design feedback but also explored San Francisco, motivated by our mutual passion for food. I also had the chance to participate in our design team’s offsite where we escaped an escape room, went out for delicious Thai food, and had insightful conversations about our design processes and areas of improvement. My favorite part was going to Spin, a ping pong social club right next to the office, and getting competitive with the other designers. Outside of the design team, I also had many opportunities to have 1:1 meetings with folks from other teams and departments that allowed me to learn more about other fields and products.

Overall, working at Benchling has brought me a lot of joy, friends, and connections, and without a doubt, has shaped me into a stronger designer than three months ago.

Yun: I really enjoyed my remote internship experience at Benchling last year but it was even more enjoyable this year in person. Working together in person and being able to ask my mentors about anything at any time in the office was a great experience for me to learn and grow in my early career. I also had a great time hanging out with other interns in person and felt like we formed great friendships! It is always nice to hang out with other full timers to learn more about their experiences and have a good time.

I also participated in events at work including the hackathon, a reading group, SF location 1:1s, and was able to interact with people outside of my team and learn many things outside of my own project.

If you’re interested in interning or working full-time at Benchling, we’re hiring!

--

--