Systems Software Engineer (C/C+)

Garrison
London
GBP 60,000 - 80,000
Job description

Job Description

Founded in 2014 in London, United Kingdom, Garrison has raised more than $70m to date from London investors including Dawn Capital, IP Group, NM Capital and BGF. Garrison's strengths lie in its experienced and dedicated teams, building on years of expertise in cyber security to bring genuinely game changing technology to the industry.

Garrison is working to build the future of cyber security and is already deploying at scale in both the government and commercial markets. Our existing customers are large organisations averaging over fifty thousand employees each, across sectors including banking, insurance, media, telco, law, and government.

2024/25 is shaping up to be our busiest and most productive year yet, with increasing demand, strong growth, and plenty of impactful projects taking place!

What we do

We make the internet a far safer place for work and play. We develop cybersecurity products that bring together our own electronic hardware, firmware and software to provide an unrivalled combination of security, usability and performance to ensure that risky web content is never processed on the user's endpoint device.

Garrison has already set itself apart in the cyber security marketplace by delivering extremely effective and compelling security products.

Our working culture

We are an exciting SME with ground-breaking technology; a very serious mission to solve real world problems, with a positive and highly inclusive culture, and an excellent work/life balance!

At Garrison we celebrate diversity and inclusion, and we are focused on continuously improving equality for the benefit of our employees, products, and community. We recruit, develop, and retain talent purely on the basis of qualifications, merit and business needs.

We are proud to be an equal opportunity employer and we take every possible step to ensure that every person employed or seeking employment with us receives fair treatment. No-one shall be disadvantaged on the grounds of age, disability, gender, ethnicity, religion or belief, sexual orientation, marital and parental status, neurodiversity, social background, physical ability, illness or otherwise.

These are the employee benefits that we can offer you at Garrison:

  • 25 days holiday allowance per year (with the opportunity to purchase more)
  • Flexible bank holidays - Good Friday, Easter Monday, Christmas Day and Boxing Day all available for exchange
  • Company pension scheme of 8% base salary (depending on minimum contribution)
  • Personal annual training budget
  • Perkbox discounts
  • Life assurance and critical illness cover
  • Employee Assistance Programme
  • Enhanced parental leave
  • Income protection
  • Cycle to work scheme
  • Interest-free season ticket loans
  • Daily fruit, snacks and drinks in our offices
  • Flexible working hours and working from home options
  • Hybrid working allowance, to help get your home office set up
  • Awesome employee referral program: £3,000 - £5,000 for each successful referral
  • Regular socials - such as games and quiz nights, picnics, theatre, and lots more

Overview of the role

As a Systems Software Engineer at Garrison, you will be involved in developing board support packages for our platforms, contributing to their quality , security, and maintainability. You will work on embedded software, designing, developing and testing new solutions as well as understanding and contributing to open source projects. You will also contribute to R&D projects, building prototype solutions for our next products.

Product software development

  • Developing and maintaining board support packages, at the foundation of the software powering Garrison's hardware.
  • Collaborating with hardware and firmware engineers during hardware validation and board bring-up activities to prove new designs.
  • Contributing to scoping and design of new software through planning and task estimation.

Integration, test and sustainment

  • Performing end-to-end integration and test of software, firmware and hardware through both manual and automated testing.
  • Extending system-level test capabilities to support testing at various stages of the product life cycle, including hardware validation and production.
  • Contributing to maintenance of 3rd party open-source projects by participating in security reviews and assessments, porting patches, and upstreaming bugfixes developed for Garrison.

Continuous improvement and innovation

  • Improving code maintainability by proposing code refactoring, participating in code review and analysis, and developing unit tests.
  • Automating recurring tasks, using continuous integration practices and tools, to allow team members to focus on the design and development of new features.
  • Suggesting and progressing opportunities for innovation across the product, investigating new technologies and techniques, performing prototyping with the direction of senior leadership, and discovering new opportunities for new design improvements and product features.
  • Recognising the industry that Garrison operates in, and appreciating the importance of following Garrison's information security policies.

Skills and experience

You will be perfect for the role if you have the following

  • Demonstrable knowledge of multiple programming languages, which will need to include C and/or C++
  • Exposure to a scripting language, which could be Python, Bash or Shell.
  • Exposure to working with development boards (e.g. Raspberry Pi, Arduino) and/or embedded systems (IoT devices).
  • Experience with the Linux OS, at the minimum as a user.
  • Knowledge of core computer science concepts such as concurrency, networking, performance measurement and algorithms.

Experience here would be a bonus (but don't worry if you haven't covered these, we will support your learning as required!)

  • Writing portable code, using different toolchains and cross-compiling software.
  • Understanding of Linux kernel drivers and kernel maintenance and patching.
  • Board bring up activities, use of oscilloscope / logic analyser, debugging and benchmarking of hardware platforms.
  • Yocto project, both using 3rd party layers as well as defining new recipes.
  • Build systems such as Make and CMake.
  • AOSP
  • CI tools (Gitlab, Bamboo, Jenkins, ...)

You will also

  • Have a passion for technology, demonstrated through prior professional and/or personal project work. You'll likely enjoy technical challenges and delivering results!
  • Be self-motivated, flexible and adaptable, able to cope when thrown in at the deep end.
  • Understand the importance of planning, prioritisation and getting work done to schedule.
  • Have strong interpersonal and communications skills, plus the ability to effectively collaborate with others.
Document
Get a free, confidential review from a resume expert.
Select file or drag and drop it
TrustpilotStars
Rated “Excellent” based on 6,329 reviews
Avatar
Free online coaching
Improve your chances of getting that interview invitation!
Be the first to explore new Systems Software Engineer (C/C+) jobs in London