I'm Benjamin Grant, a lead frontend / Javascript engineer based in Brighton. And a lover of good food.
I'm currently working at Lean Library, a browser extension for libraries. Mostly working with Typescript and React, with a mix of the latest ES/ECMA spec, and S/CSS. I'm currently focusing on browser extensions, with a strong knowledge of native APIs and the innards of a browser.
Lean Library's core project revolves around a browser extension patrons (students and researchers) can install to give them off-campus access to library holdings (material and subscriptions). We also have a feature set branded as Futures which brings the library toolings into the patron workflow.
I joined Lean Library with the goal of taking a legacy extension codebase and turning it into a project that was enjoyable to work on. We needed to build something with better UX, that was more reliable and easier to build upon to give libraries new features.
In my first year I focused on;
In my second year I focused on;
During my time at Hiber I've been building and managing the internal and client facing web applications. This includes a modem management tool, satellite operational tools, a locally-running web GUI for devices in the field, and the website at https://hiber.global.
I've also transitioned into the role of a team lead. I manage a team focusing on these web applications and the API that supports them by; running the project management, streamlining the flow for new products and features, aligning our roadmap and goals with management, managing and allowing for seemless conversation between our team, design, sales, and other stakeholders, and product owning our collection of tools. I'm also responsible for hiring and on boarding of new team members and, along with the other senior members of the team, coaching the more junior developers.
The web applications have been built with Vue.js (ES supported) with a living styleguide, connecting via Typescript to an API built with Kotlin and GPRc. They're built organically with primary input coming from direct users, with a real focus on making the interaction as seamless as possible.
One of the primary products we've been working on is Mission Control, as described on our website; "Mission Control (sometimes referred to as Customer Mission Control) is a modem management platform. It provides a quick overview of every device deployed anywhere on Earth. Including its health status and location. Mission control also manages Cloud services via API, webhooks or bespoke integration. 'Houston, we don't have a problem.'"
At YoungCapital, I worked on a microteam prototyping new projects and ideas, using a mix of Vue, React, and Cordova. Alongside this, I was also part of a team that worked on a rebuild of the front end in React from the current Ruby system. I took ownership of a styleguide, wrote tests and CI runners using Docker, and built a system that future SPAs in the company will be built upon.
During my time as a freelancer, I worked with a large number of international and remote teams. This taught me how to quickly adapt to a teams' work flow and code base. Only being a part of a team for a couple of month at a time allowed me to develop my ability to read legacy code, and work on my communication skills. My tasks on these projects and teams included building fast, responsive, and fluid websites and web apps. I was often given the freedom to experiment and pick my own workspace allowing me to learn new technologies and develop a wide range of skills.