Senior Fullstack Software Engineer
Role details
Job location
Tech stack
Job description
As Senior Fullstack Software Engineer, you will help design, build and maintain the production systems that power Outsmart's platform.
You'll work closely with our CTO, operating as a high-agency individual contributor with genuine ownership across backend systems, infrastructure and platform evolution.
This is a role for someone who wants to:
- Work on real, live systems with meaningful operational responsibility
- Make architectural decisions, not just implement them
- Improve and extend an existing platform with care and judgement
- Help shape the engineering foundations for the next stage of company growth
You will be trusted to take product and operational requirements and translate them into robust, production-ready solutions.
What you'll be doing
- Designing and maintaining backend services primarily in Python
- Developing and evolving well-structured RESTful APIs
- Designing and improving data models across relational (e.g. PostgreSQL) and NoSQL databases
- Working across the stack where needed, including JavaScript, modern HTML/CSS, and utility frameworks such as Tailwind
- Contributing to cloud-based infrastructure (e.g. Google Cloud), deployment pipelines and DevOps practices
- Debugging live production issues with a calm, root-cause mindset
- Incrementally improving system architecture using sound design principles (including modular design, DDD-style thinking, and pragmatic architectural patterns)
- Reviewing code, raising standards constructively, and contributing to a disciplined engineering culture
- Leveraging modern tooling (including AI-assisted development) to improve quality and velocity
This is not greenfield experimentation. It is thoughtful, high-quality engineering on systems that matter.
The environment
We are a small, intellectually serious company. That has advantages and responsibilities.
You will:
- Speak directly with senior decision-makers when needed
- Operate without perfect documentation
- Balance speed with long-term maintainability
This role suits someone comfortable with autonomy, accountability and cross-functional collaboration.
Requirements
- 8-15 years into their engineering career
- Has worked in a small company (c. 5-30 people) or similarly lean environment without heavy process
- Experienced in inheriting and improving mature systems
- Comfortable reading and navigating complex legacy code
- Strong in systems thinking (trade-offs, scalability, cost implications)
- Backend-heavy, with strong Python expertise
- Operationally mature - you've supported production systems, not just built features
You are likely:
- Calm under pressure
- Direct but not ego-driven
- Curious and thoughtful rather than dogmatic
- Comfortable challenging ideas constructively
If you primarily identify as a manager, a greenfield-only builder, or someone who prefers heavy structure and layered sign-off, this role is unlikely to be a good fit., * Strong client relationships built on trust
- Hard work, rewarded
- A happy, healthy team