Lead Angular Engineer

What's the challenge?

At Tassomai, we provide technology tools to improve education.
Our software is used by thousands of British secondary school students, teachers, and by parents. Students use Tassomai to revise and learn, using "spaced repetition learning", and our algorithms tailor the experience to their existing knowledge and to how much they use the application. Teachers use Tassomai to monitor their students' knowledge and understanding, and to free them from some of the more tedious tasks, to focus on what they do best: to teach.

We have tens of thousands of active users, are aiming to increase that, and to engage our users more.  We also have an ambitious company vision, involving leveraging our existing data to offer rich insights to other other stakeholders in education.  To support both of these business aspects, we want to add to our small engineering team.  We're looking for someone with a strong engineering background, who wants to work on a product they care about, and is interested in being involved throughout the product development lifecycle.

 Circles overlapping image
 
 

Experience and person specification

You have held a senior or lead position in an environment where quality was assured using code review, automated testing and manual QA.  You might have an interest in test-driven or behaviour-driven development.

You have worked successfully in teams which are at least somewhat Agile.  Perhaps such a team will have been cross-functional, i.e. including members who focussed on product design and on testing, or you find such a working setup appealing.  Within the engineers of that team, you have ideally held a lead position.  You are able to guide more junior engineers, helping to make design decisions, particular using Angular.

You are relaxed and friendly, and are able to work with a team to meet deadlines.
 

Technical skills

  • You have strong skills in Typescript and Angular, and ideally at least some exposure to RxJS and NgRx store;

  • You can write unit-level and higher-level tests, to ensure adequate code coverage and that code you produce or oversee matches acceptance criteria;

  • You probably know at least one other language well, and perhaps that's in python (maybe even with django), because we aspire to have a team who can contribute code across the stack.

Responsibilities

The main responsibility will be to lead the front-end engineering team.

  • Lead the team in making, justify and explain architecture decisions;

  • Help ensure the rhythm of the engineering effort, including standups, plannings and retrospectives;

  • Provide technical leadership on front-end issues for other junior members of the team

There would also be the chance to take on line-management responsibilities, but this would not be a requirement.

You will also participate in developing and maintaining features

  • Understand and develop the requirements proposed by product designers;

  • Write code to implement those requirements, accompanied by automated tests;

  • Refactor, where appropriate, existing code to make it more maintainable;

  • Document code, and structure it so that it is easily understandable by others;

  • Review code written by others

You will also be involved in resolving bugs which may arise

  • Help to identify and analyse any bugs

  • Participate in prioritising and scheduling time to work on these

  • Where appropriate, work to resolve bugs and to appropriate an automated test to cover the case.

A healthy engineering team also teaches and learns, and we hope you'll help us do that by some of the following means:

  • Pair program with other engineers

  • Participate in internal hackathons

  • Attend discussions of technologies that are unfamiliar to some of the team

  • Identify appropriate technologies to supplement/replace those we currently use

Technologies we currently use

We would expect you within the first few months of working here to have a solid understanding of, and to have worked with, most if not all of the following.

  • Python 3

  • Typescript

  • Angular 6

  • NgRx

  • RxJS

  • Django

  • Cordova

  • Postgres

  • Redis

  • Gherkin

  • Docker

  “Working in our small engineering team means shaping products which are used by many thousands of people, so what you do has immediate impact."    Jonathan, Senior Software Engineer

“Working in our small engineering team means shaping products which are used by many thousands of people, so what you do has immediate impact."
Jonathan, Senior Software Engineer

 

Where would you be working?

We’re based on the 5th floor of an old pharmaceutical warehouse in Bethnal Green.  It’s a co-working space and we’ve bagged the best office which is light and airy with a lovely balcony - we love it.

There’s a great cafe, a gym offering bargain membership and we’re a stone’s throw from Bethnal Green tube and Bethnal Green overground stations.

  • EMI share scheme

  • Flexible working

  • 22 days holiday plus your birthday off

  • Time off between Christmas and New Year

  • Cycle to work scheme

  • Travel card loan scheme

  • More coffee-making apparatus than the rest of East London put together

Salary:

£60k - £80k, dependent on experience.

How do you apply?

If you are interested in discussing the role further, please write to careers@tassomai.com to arrange a call.