So, after the easiest job hunt in my life, I’ve recently landed a job in the heart of the city at Geovation!
Geovation is an incubator for startups that focuses on location data. It was spawned by Ordanance Survey, who want to increase innovation in the UK - particularly around their product (maps). They also provide advice and expertise to anyone who wants help doing something technical with geospatial data.
My job was to help one of the Geovation staff with one of his pet ideas - helping develop it from a proof-of-concept to a MVP. At first the team consisted of only me, Max (the boss) and another graduate developer. We quickly pulled in other people as needed for things like business advice, or design.
The product (currently called MatchMyRoute) is an app that will encourage new cyclists in cities to get out more. The idea is that experienced cyclists will list which routes they regularly cycle, so we have a database of ways to get from A to B.
When a new cyclist wants to get somewhere, they simply need to enter their start and end points, and the app will intelligently buddy them up to an experienced cyclist who is willing to show them the route - letting them get their confidence up, until they can eventually show other new users around too!
I may only be a mediocre cyclist, but the idea resonates with me - I would like to be a better cyclist and this app could one day help me do that. You really can’t beat the feeling of working on something that you believe will actually improve people’s lives.
To complete this app, I had to learn lots of new technology:
- Node.js - A Javascipt runtime for web servers. Nothing too special, but I hadn’t used it before (I know, did I live in a cave or something?).
- PostGIS - A PostgreSQL extension that lets you do powerful things with geospatial data.
- Seneca - A microservices toolkit that made writing the backend much cleaner.
- Swagger - A way of writing documentation for an API, which can then be folded in to the microservices framework to define arguments and types.
- React Native - A way to write code once in a way that can be compiled to work natively on multiple types of device (in ths case Android and Apple phones).
- CircleCI - This is a service that can be set up to react whenever certain events happen. We set it up so that any merge-request ran the unit tests to make sure that nothing was broken, and once the branch was merged it would deploy the new master to the server and run end-to-end integration tests.
I worked for Geovation for about 3 months, in which time I effectively completed the backend, and helped on some of the frontend too. They were a fantastic employer, and didn’t even mind that 3 weeks into the job I went for a 4 week holiday (the cruise)! Everyone was friendly and inclusive and I really felt part of the team.
Now if only they had a branch in New Zealand!