At a Glance
- Tasks: Design and optimise core software for advanced computing systems using Python, C++, and Rust.
- Company: Join a cutting-edge deep-tech company at the forefront of innovation.
- Benefits: Enjoy hybrid working, competitive salary, and opportunities for career development.
- Other info: Work with multidisciplinary teams and influence the future of next-generation technologies.
- Why this job: Make a real impact by solving complex engineering challenges in a collaborative environment.
- Qualifications: Strong software engineering skills with experience in low-latency systems and modern development practices.
The predicted salary is between 60000 - 80000 £ per year.
A cutting-edge deep-tech company developing advanced computing systems is seeking a Software Engineer to help build and optimise the core software platform that interfaces with highly specialised hardware. This is an opportunity to work on complex, performance-critical systems at the intersection of software, hardware, and scientific research. The successful candidate will contribute to the development of low-latency control and orchestration software used in production environments, collaborating closely with engineering, hardware, and research teams.
Key Responsibilities
- Design, develop, and optimise core systems software using Python, C++, and/or Rust.
- Own critical platform components and drive improvements in performance, reliability, scalability, and operability.
- Develop low-latency interfaces between specialised hardware platforms and classical compute infrastructure.
- Collaborate with hardware and research teams to integrate new technologies from prototype through to production deployment.
- Build and improve CI/CD pipelines, deployment tooling, monitoring, and observability capabilities.
- Profile and optimise system performance, identifying bottlenecks and implementing measurable improvements.
- Contribute to software architecture decisions, technical design reviews, and engineering best practices.
- Improve code quality through testing, code reviews, and maintainable software design.
- Work cross-functionally to translate product and customer requirements into robust software solutions.
Requirements
- Strong software engineering fundamentals with experience delivering production systems.
- Excellent Python skills, with experience in C++ and/or Rust being highly desirable.
- Experience in one or more of the following areas:
- Low-latency systems
- Linux systems programming
- High-performance networking
- Embedded software
- GPU programming
- Hardware/software integration
- Familiarity with modern software development practices including Git, testing, code reviews, and CI/CD.
- Experience debugging, profiling, and optimising complex software systems.
- Degree in Computer Science, Physics, Engineering, Mathematics, or a related quantitative discipline (or equivalent experience).
- Experience working within commercial technology organisations, scientific computing environments, or deep-tech companies.
Desirable Experience
- Integration of hardware-adjacent systems within on-premise or data-centre environments.
- Knowledge of data acquisition, digital signal processing, timing synchronisation, telecommunications, or RF systems.
- Experience with observability and monitoring platforms.
- Exposure to scientific instrumentation, advanced computing platforms, or quantum technologies.
Benefits & Opportunity
- Work on highly innovative next-generation computing technologies.
- Collaborate with multidisciplinary teams spanning software, hardware, and scientific research.
- Influence the architecture and direction of complex production systems.
- Opportunity to solve challenging engineering problems involving performance, scalability, and hardware integration.
- Hybrid working environment with a strong focus on technical ownership, collaboration, and career development.
Software Engineer (Testing) (Permanent) in London employer: DeepRec.ai
Join a pioneering deep-tech company that champions innovation and collaboration, offering Software Engineers the chance to work on cutting-edge computing technologies in a hybrid environment. With a strong emphasis on technical ownership and career development, employees are encouraged to grow through multidisciplinary teamwork and tackling complex engineering challenges. This role not only provides the opportunity to influence the architecture of advanced systems but also fosters a culture of continuous improvement and excellence.
StudySmarter Expert Advice🤫
We think this is how you could land Software Engineer (Testing) (Permanent) in London
✨Tip Number 1
Network like a pro! Reach out to people in the industry, attend meetups, and connect with potential colleagues on LinkedIn. You never know who might have the inside scoop on job openings or can refer you directly.
✨Tip Number 2
Show off your skills! Create a portfolio showcasing your projects, especially those involving Python, C++, or Rust. This gives you a chance to demonstrate your expertise and passion for software engineering beyond just your CV.
✨Tip Number 3
Prepare for technical interviews by brushing up on your coding skills and system design knowledge. Practice common algorithms and data structures, and be ready to discuss your past projects and how you tackled challenges.
✨Tip Number 4
Don’t forget to apply through our website! It’s the best way to ensure your application gets seen by the right people. Plus, it shows you’re genuinely interested in joining our cutting-edge team.
We think you need these skills to ace Software Engineer (Testing) (Permanent) in London
Some tips for your application 🫡
Tailor Your CV:Make sure your CV reflects the skills and experiences that match the job description. Highlight your Python, C++, or Rust experience, and any relevant projects you've worked on. We want to see how you can contribute to our cutting-edge tech!
Craft a Compelling Cover Letter:Your cover letter is your chance to shine! Use it to explain why you're passionate about software engineering and how your background aligns with our mission. Let us know what excites you about working at StudySmarter and this role in particular.
Showcase Your Projects:If you've worked on any relevant projects, whether personal or professional, make sure to mention them. We love seeing practical examples of your skills, especially in low-latency systems or hardware integration. It gives us a glimpse into your problem-solving abilities!
Apply Through Our Website:We encourage you to apply directly through our website. It’s the best way for us to receive your application and ensures you’re considered for the role. Plus, it shows us you’re keen on joining our team at StudySmarter!
How to prepare for a job interview at DeepRec.ai
✨Know Your Tech Stack
Make sure you brush up on your Python, C++, and Rust skills before the interview. Be ready to discuss specific projects where you've used these languages, especially in low-latency systems or hardware integration. This will show that you not only understand the theory but also have practical experience.
✨Showcase Your Problem-Solving Skills
Prepare to talk about complex engineering problems you've solved in the past. Think about situations where you had to optimise performance or troubleshoot issues in production environments. Use the STAR method (Situation, Task, Action, Result) to structure your answers clearly.
✨Familiarise Yourself with CI/CD Practices
Since the role involves building and improving CI/CD pipelines, be ready to discuss your experience with deployment tooling and monitoring. Highlight any specific tools you've used and how they contributed to the efficiency of your projects.
✨Collaborate and Communicate
This position requires working closely with hardware and research teams, so be prepared to demonstrate your collaboration skills. Share examples of how you've successfully worked cross-functionally in the past, and emphasise your ability to translate technical requirements into actionable software solutions.