🌎
This job posting isn't available in all website languages
📁
Digital Technology
💼
Corporate Services
📅
MAD00003Q Requisition #

Arup is an independent firm of designers, planners, engineers, consultants and technical specialists offering a broad range of professional services. Through our work, we make a positive difference in the world.

We have an ambitious commitment to be the digital leader in the built environment and are investing heavily in our digital transformation. We have digital teams and experts all over the world, who collaborate on world-leading software, data and automation projects and products.

Our Digital Development group, part of Digital Technology, develops tools and techniques for engineering analysis and simulation problems encountered in the built environment.  These are used worldwide for design of high-profile structures like the Gherkin in London and the Beijing Olympic Stadia, and major infrastructure projects like HS2 in UK and Stonecutters bridge in Hong Kong.

The role

We currently have an exciting opportunity for a technical lead to join our Algorithms and Numerical Analysis team specialising in software for numerical analysis, which comprises specialists in computational mechanics, theoretical computer science, high performance computing and mathematics. The team’s work covers a broad range of areas including solvers for eigenvalue problems and nonlinear equations, graph machine learning, surrogate modelling, parallel computing, and quantum optimisation. These numerical solvers power finite element simulation software used for the analysis and design of buildings, bridges, tunnels and other infrastructure globally.

The position offers an opportunity for software development including architecture and design, technical strategy, technical leadership, and collaboration with academia. It is part of a close-knit team that is geographically dispersed and diverse. The successful applicant will work closely with a geographically dispersed and diverse team of numerical algorithm developers, full-stack software developers, QA and devops. Reporting to the algorithms and numerical analysis lead who is based in Manchester, you will be responsible for quality, architecture and performance of key, compute-intensive solver products used in numerical simulation. Please note this role can be based out of any Arup office within the UK, Europe or India. 

“I love working for Arup, and the strong emphasis it has on innovation. I appreciate the openness within the team and the supportive environment that has been created.  I have never been bored in the role – we’re working on very challenging and interesting problems.”   
Samila, London

You should apply if:

  • You are senior C++ developer who thrives working on performance sensitive, algorithmic challenges
  • You think and care about software architecture, and enjoy sharing your knowledge and mentoring others
  • You are motivated to use your skills and expertise to work on technically challenging, real world problems that contribute to sustainability, safety, and resilience of the built environment

Responsibilities of the role include:

  • Architect and implement new solver functionality ensuring the design strikes a balance between performance, maintainability, testability, and composability. Refactor and maintain existing functionality to improve maintainability and reduce technical debt
  • Technically mentor other developers, lead design sessions and code reviews, and influence the technical direction for solver products and libraries
  • Work closely with algorithm developers to analyse and optimize performance of new and existing solver code. Explore and evangelize design paradigms that support the overarching goals of performance
  • Design and implement APIs for integration with client applications for a variety of execution models and interaction paradigms
  • Develop relationships with a variety of stakeholders including product managers, support, QA, expert end-users, domain experts and academic collaborators
  • Forge new ways of working including prototyping proofs of concepts or exploring new development techniques and tools that will enhance the performance and/or functionality
  • Demonstrate technical excellence in numerical software development including, but not limited to, speaking at conferences, disseminating best practice, or keeping up to date with software industry trends

Requirements and skills

Essential skills and knowledge:

  • Significant software development experience with deep skills in C++ and proficiency in one other language such as python, Javascript, or C#
  • Strong theoretical understanding and practical experience of performance optimisation including algorithmic complexity, awareness of processor architectures, cache-efficient programming, data structure design, and parallel programming
  • Experience working with close-to-metal floating-point intensive code for instance in domains such as scientific computing, linear algebra, signal processing, or machine learning
  • Demonstrable knowledge of design paradigms
  • Knowledge of C++ language features – preferably C++17/20 ­– and libraries especially the standard library and parallel algorithms
  • Experience with using profilers, code advisors (such as Intel Composer), optimizing compilers, and other static analysis tools
  • Capable of solving complex technical and software development problems and conveying this information to others

Desirable skills and knowledge:

  • Experience working with numerical analysis software used for solving partial differential equations including but not limited to finite element methods or computational fluid dynamics
  • Experience with distributed memory computing, in particular Message Passing Interface
  • Experience with cloud native development (in AWS, Azure or Google Cloud)
  • Experience of working in distributed teams and multinational, multicultural environments

Required behaviours:

  • You have a passion for diversity, recognizing the innovation and competitive edge that comes from a diverse highly skilled team where equal opportunities are truly valued
  • You will be confident in your technical leadership skills and take an active role in building a high performing team and supporting the development of others
  • You will be a mature and self-motivated professional able to work in a fast-paced and constantly changing environment
  • You will exhibit a high degree of organization and technical rigour and keep up to date with current and future directions for our business
  • You will be flexible in your approach to problem solving as you understand that there are multiple technical and commercial drivers for software development
  • Please don’t be discouraged if you don’t meet every point above – if you meet most, and are strongly motivated by the role, and willing to learn, we are still interested in hearing from you.

Qualifications

  • A Bachelor’s or a higher degree in Computer Science, Computational Science, Physics, Maths, or a numerically intensive engineering discipline is highly desirable

Why work at Arup?

  • We offer a unique environment of creativity, innovation and continuous challenge
  • Being part of a team of professionals who have years of experience in the sector, enjoy what they do and share a unique business culture
  • Develop a career in Spain or abroad, through our international assignments
  • Continuous training and professional development that will allow you to adapt to the growing needs of our clients
  • We contribute to the United Nations Sustainable Development Goals, creating shared value for our customers and our communities, while safeguarding our planet
  • We are committed to equal opportunities between men and women through the objectives set out in our equality plan
  • We offer a flexible working scheme. We are open to candidates seeking a more flexible working week including flexible start/finish times or planning to work from home a few days a week.
  • At Arup, you’ll be a welcomed member of the team with opportunities to join one of our staff networks such as Equality Diversity and Inclusion, Community Engagement or Ovagreen.
  • We aim to encourage a culture where people can be themselves and be valued for their contribution. This includes people with disabilities, so please discuss any adjustments that you may require throughout the selection and assessment process with your recruitment contact.

No agencies please 

Stay safe online - Arup will never ask for payment or your bank details as part of our recruitment process 

Previous Job Searches

My Profile

Create and manage profiles for future opportunities.

Go to Profile

My Submissions

Track your opportunities.

My Submissions

Similar Listings

Corporate Services

Newcastle, Tyne and Wear, United Kingdom

📁 Digital Technology

Requisition #: NEW00013H

Corporate Services

Krakow, -, Poland

📁 Digital Technology

Requisition #: KRA000008

Corporate Services

Birmingham, West Midlands, United Kingdom

📁 Digital Technology

Requisition #: BIR00005S