Senior Full Stack Software Engineer
thymia
thymia is on a mission to make mental health as objectively measurable and monitorable as physical health. Using the latest advances in machine learning and neuropsychology we provide AI powered mental health assessments that identify mental illness and its underlying symptoms specifically, accurately and objectively.
thymia is on a growth path, backed by healthy VC funding and multi-million annual revenues. We are a dedicated team, passionate about making a positive impact in the mental health space.
The Role
This is a product focused role, for a product minded person. You’ll work on discovery and delivery for thymia products, which currently include an API platform and a mobile-first web application, where users complete different activities - including things like playing a memory game, doing a video or audio recording, and answering questions via forms. Ultimately it is about measuring and tracking their mental health & mental wellness over time.
You’ll be involved all the way through the process from figuring out what we should build and how we should build it, to building it, to shipping it and owning and maintaining it in production.
You’ll collaborate with designers, product managers, engineers, neuroscientists, machine learning researchers, marketing - or whoever is needed - and have a healthy back and forth with them about what the right balance is to get something useful and meaningful out to customers quickly in a way that we can iterate on and improve continuously. We want to build lots of small features we can ship early and often, track and learn from how they perform, and continuously improve all the time.
You’ll work using mostly Python for backend work and TypeScript (Next.js or React) for frontend work. In different periods we may be a bit busier with more backend or frontend tasks and you’ll be happy and eager to work across either, but you may lean one way or the other in terms of backend vs frontend and prefer to pick up tasks in one area where you can.
As a senior engineer, you’ll also be a mentor and teacher for less experienced engineers, investigate and make recommendations for big architectural decisions, and suggest ways to improve our ways of working.
In engineering, we value pair programming and TDD, but we are flexible and open minded about when to use the different tools in our toolkit - there is nothing dogmatic about our approach. We also use Kanban for managing work.
Key Skills & Background
- Experience working as a full stack engineer, with a minimum of 5 years of experience working in Python (Django) and TypeScript (Next.js or React).
- Experience with AWS and IaC
- Experience mentoring other engineers.
- Strong collaboration skills - you will work with diverse people in a diverse set of teams - Neuroscientists, Data Scientists, Machine Learning Researchers, Engineers, Product Managers - there are a lot of different opinions and perspectives to take on board.
- You are a great communicator, sharing feedback with others, taking feedback on board yourself, and advocating for continuous improvement.
- Nice to haves:
- Familiarity with Tailwind CSS, and at least one popular React UI library, such as Material UI or NextUI.
- Experience with testing frameworks, such as Jest, PyTest, Cypress, or React Testing Library.
Company Benefits
- Private pension
- Private health insurance
- 28 days holiday
- Flexi-working - we currently have one day a week where everyone is strongly encouraged to come in to spend the day together in person, at our office right next to Moorgate station
Interview Process
Our standard interview process follows the below format - we try to accommodate candidates' needs and bulk steps together where possible.
- Initial phone interview with the VP Engineering (30 minutes) - this covers background and overall alignment with thymia's mission and role
- Technical Interview - Coding (1 hour); phone or in person with engineering team members
- Technical Interview - Architecture (1 hour); phone or in person with engineering team members
- Non-technical Interview - get to know the team and CEO / CTO meetings (1 hour max to make sure that the candidate had the opportunity to meet all the relevant people); phone or in person