This is the third of our monthly posts introducing a member of the Ensembl team and what they do in Ensembl. This time it’s Matthew Laird, who works in the Core team.
What is your job in Ensembl?
I’m a developer on the Ensembl Core team. We maintain the Perl and REST APIs, the Xref system and a number of other core code bases in Ensembl. We’re typically a more technological, rather than a biologically focused, team, and help support other teams in the Ensembl project with their development challenges.
What do you enjoy about your job?
There are always new challenges coming up: as we’re trying to scale up Ensembl to handle hundreds of genomes, exploring the new technologies that might allow us to do this scaling is very exciting. We’re also working more with the Global Alliance for Genomic Health (GA4GH) initiative to help make our datasets more accessible to clinical work, and seeing our work have this real positive effect on health definitely creates warm fuzzies.
What are you currently working on?
There’s the typical tasks that go with the Ensembl release cycle. However, I have a few longer term projects, the main one right now being a refresh of the REST API. We’re exploring ways to make the endpoints more consistent in their behaviour, to address the coming scaling issues and integrate GA4GH standards in the API. I recently completed automating our deployment process for the REST API; this was actually a very fulfilling project, being able to have our most recent release deploy with minimum intervention. And it should be useful to others who want to install their own Ensembl REST instances.
What is your typical day?
On a typical day, after properly caffeinating, I’d usually continue working on one of my longer term projects. Usually this would involve coding, but more recently a lot more writing of specifications documents. Depending where we are in the Ensembl release cycle, I might have tasks that need completing within a given timeframe so databases can be handed off to the next team. And of course questions from users or other teammates may pop up. We aim to try and respond to users within a day or two, so whoever on the Core team has a moment will typically jump on responding to these queries.
Software development has its ups and downs: you can spend an hour or two on a bug that embarrassingly turns out to be a typo you somehow missed. But when you get something working and can hand it off for others to use, that’s a fantastic feeling.
How did you end up here?
I’m a software developer by training, I call myself a dot-com refugee. When the first dot-com bubble burst I found myself, like so many others, out of work. I found a job developing bioinformatics software at Simon Fraser University back in Vancouver. I actually had no biology background, I hadn’t taken it since high school. But my previous boss needed a good developer, it sounded interesting, and she was willing to take a chance on me picking up the biology. After a few years, getting more involved in the research side, and publishing a few papers, I fell in love with the field. Pushing the boundaries of knowledge, seeing your work have tangible effects on the world – it was enjoyable work.
I knew of Ensembl, we used it as what we called the backbone for a project called InnateDB. Ensembl genes, transcripts and proteins were the basis for our database. But beyond scraping features out of the Ensembl database, I wasn’t overly familiar as we were mainly a bacterial bioinformatics lab.
What brought me to Ensembl was actually a chance meeting of one of the Ensembl managers at a conference. After a few beers and discussing projects he mentioned EBI had some openings for developers and encouraged me to apply. It sounded like a stimulating environment, so my wife and I decided it could be an interesting adventure to take the opportunity and live in the UK for a few years. I’m definitely grateful for her support in being open to move here. Part of me does miss not being on the research side of the field, but no regrets, it’s been a fantastic place to work so far and never a dull moment on the challenges that come our way.
What surprised you most about Ensembl when you started working here?
Over my career I have actually never worked in such a large team before. Between being in small startups or a research lab, having such a diverse, large set of teammates was a bit of a change. I had always had to be a jack-of-all-trades, from maintaining the computational cluster to implementing the user interface on a tool. Having such a vast array of colleagues from across the globe with a depth of knowledge in so many fields to bounce ideas off has been very pleasant, I hope I’ve contributed as much as I’ve learned from them all.
What is the coolest tool or data-type in Ensembl that everyone should know about?
The REST API is definitely something I think more people should get to know, the ability to programmatically access the Ensembl datasets from any language. We’ve implemented archives as of release 87, which brought down one of the biggest hurdles for using REST: reproducible results for analysis done on prior Ensembl releases. We’re definitely soliciting feedback on ways to improve the API as we undertake this big revamping project.