Back End Engineer
Role details
Job location
Tech stack
Job description
We're searching for a Back End Engineer to join our growing engineering team. Based in either London, Manchester, or Bath, you'll report to one of our Engineering Team Leads and work on the backend of our broad range of Internet exploration and cybercrime detection and disruption services.
A key part of this role is maintaining and improving existing Perl-based platforms that support our core services. These systems are critical to the operation of our products, and the role requires engineers who take ownership of production systems and care deeply about their reliability, performance, and stability.
Over time, you'll also have opportunities to contribute to incremental improvements and modernisation of parts of the platform, including services written in Go and TypeScript, where appropriate. However, the primary focus of the role is operating, maintaining, and improving our existing systems.
This role would suit an engineer who enjoys working on real-world production systems, taking ownership of services, and improving platforms over time rather than building greenfield systems from scratch.
Day to day, you'll be
-
Designing and developing features and improvements to our products, while taking non-functional requirements like performance, reliability, and security into account.
-
Maintaining and improving existing Perl-based systems, ensuring stability, maintainability, and operational reliability.
-
Testing and documenting your work to a high standard with strong attention to detail.
-
Taking responsibility for system maintenance, operational stability, and incident prevention.
-
Responding to issues with a sense of urgency and ownership, identifying root causes and implementing long-term fixes.
-
Identifying scaling bottlenecks and resolving them, while being conscious of running costs.
-
Collaborating with other engineering teams to ensure services you own are well-integrated with their services.
-
Working with cross-functional stakeholders to help propose, design and implement solutions to meet business needs.
-
Working independently and proactively, identifying opportunities to improve systems and processes over time.
-
Where appropriate, contributing to incremental improvements or new components using technologies such as Go or TypeScript.
Requirements
-
Experience developing and maintaining production backend systems, ideally including Perl or similar languages.
-
The ability to work independently and take ownership of services and systems.
-
Strong attention to detail, particularly when working with production systems.
-
A proactive mindset with a sense of urgency when addressing operational issues or incidents.
-
Experience working with SQL databases (such as MySQL or MariaDB), including schema design for both OLTP and OLAP workloads, and writing and optimising complex queries.
-
Familiarity with common Unix command line tools (such as sed, grep, and AWK) and shell scripting.
-
Comfortable packaging software using a Linux package manager, such as RPM or dpkg.
-
Comfortable using configuration management tools, such as Puppet.
-
Experience using Amazon EC2, S3, RDS, and SQS, or equivalent services at other cloud providers.
-
Experience with version control systems, such as Git, and CI/CD pipelines.
-
A good understanding of computer networking technologies, including TCP, IPv4, IPv6, DNS, HTTP, and TLS.
-
Good written and verbal communication skills, with the ability to convey technical concepts clearly and concisely.
Bonus points if you have
-
Experience working with Go.
-
Experience with TypeScript.
-
Experience with asynchronous or event-based Perl programming, using libraries like AnyEvent or Coro.
-
Exposure to Docker, Kubernetes, or other containerisation technologies.
-
Experience working on large or long-lived production systems.
-
A keen interest in cybercrime or cyber security.
Benefits & conditions
At Netcraft we strongly believe in individual growth and development. Even if you can't tick every box above right now, please don't let it put you off applying.
The reward package:
- Hybrid working: please note that our expectation is two days per week in the office, with the flexibility to agree which days with your manager and vary these from time to time as needed.
- Minimum of 33 days holiday per annum (incl. public holidays)
- Spot Bonus for outstanding performance.
- Pension scheme membership with 5% employer contributions + NI savings
- Private health cover, including access to a private GP service
- Equity tracking scheme, so you can share in the rewards of Netcraft's long-term success (eligibility criteria apply)
- Comprehensive wellness and support provisions
- Enhanced family leave provisions
- Life Assurance
- Two days paid Volunteering Leave per year
- Free meals, drinks and snacks provided daily in the offices
- Regular social events such as board game nights, big summer party and annual kick-off
- Inclusive culture and environment, where you'll feel genuinely valued and respected; and A tax-efficient cycle to work scheme.