New post from lim30
Scientific Software Developer
Scientific Software Developer
Salary: £31,931 to £34,709 per annum (dependent on skills and experience). A Specialist of Allowance of up to £3,000 per annum is also available for this role.
Hours: Full time or Part time (minimum 25 hours per week)
Contract Type: Open Ended.
Location: Science and Technology Facilities Council, Rutherford Appleton Laboratory Harwell, Oxfordshire or Remote
Additional Information: Early applications are encouraged as interviews will be taking place on an on-going basis.
Closing Date: 19th September 2021
ISIS is a world-leading centre for research in the physical and life sciences. Our suite of over 30 neutron and muon instruments gives unique insights into the properties of materials on the atomic scale! We support a national and international community of more than 3000 scientists for research into subjects ranging from clean energy and the environment, pharmaceuticals and health care, through to nanotechnology and materials engineering, catalysis and polymers, and on to fundamental studies of materials.
Computing is essential to the science that we support. Software and data analysis are fundamental to our overall scientific process at ISIS. They enable our community to generate and visualise the results of their experiments. This is particularly important for many of our newer instruments, some of which have hundreds of thousands of detectors and generate a volume of data similar to the Human Genome every day. One of the key pieces of data reduction and analysis software used at ISIS is the Mantid framework that continues to grow to cover the many different scientific areas. Initially developed by ISIS, Mantid is now mission critical to the operation of the SNS facility in the USA, the ILL facility in France, and will be used by the ESS in Sweden.
We are looking for software developers with strong object-oriented programming language skills to join our team! The majority of the code is C++ so this role is suited to someone who already has experience with the language or has experience of a similar language (such as Java or C#) and is willing and able to quickly learn C++.
This is an opportunity to join an established but growing development team and progress your career as there is significant scope to take ownership for areas of work.
We choose the best technologies we can to develop software that meets the latest needs of our customers who are world-leading scientists and engineers. We love reading about new trends in our field and learning new tools and techniques that make us better software engineers. We tweak our processes to ensure we deliver the best quality software we can.
- You need to love code and a have a strong mathematical mind and interest in science
- You need to be able to work with other members of the team to design and craft solutions that work and that our customers can easily use
- You will be expected to use agile tools and techniques to play a full part in all aspects of the software development lifecycle and steer as appropriate
- You will be expected to communicate with scientists to obtain requirements for extending existing packages further according to their scientific requirements
- You will need to be able to make sound technical choices based on a broad experience to guide our development of systems
- You will also be involved in DevOps and supporting new and existing systems
- You will be expected to use Continuous Integration tools to manage the development and deployment of our solutions.
As part of the team, you will be expected to support and improve other related data reduction and analysis software and occasionally provide face-to-face training to individuals and groups of end-users. You will also be expected to help other developers or scientists who wish to contribute to the open-source project
We can only deliver what we do because of the fantastic team of developers and software scientists at various stages of their careers helping each other learn how to be even better. It follows that you too need to be enthusiastic to share your knowledge and experience with more junior colleagues.
The role is UK based and starting employment will be conditional on your right to work, and sponsorship may be available if appropriate. Applications will be reviewed as received until the closing date. There may be the opportunity for occasional UK and overseas travel to meet international collaborators, and to present the work at workshops/conferences and give training. We value diversity within our team and try to cultivate a culture of inclusivity. As such, we welcome applications from everyone regardless of race, religion, colour, national origin, sex, gender, gender expression, sexual orientation, age, marital status, veteran status, or disability status. We also seek to provide accommodations for flexible working to optimise work-life balance without sacrificing opportunities for career progression.
The below criteria will be assessed at Shortlisting (S), Interview (I) or both (S&I)
- Degree or equivalent experience in computer science, software engineering, or strongly related STEM subject with significant software development experience (S)
- Sound understanding of object-oriented analysis, design, and experience developing using object-oriented programming techniques and testing frameworks (S&I)
- Experience of using code repositories and issue tracking systems (S&I)
- Good verbal and written communications skills including the ability to explain technical concepts effectively (S&I)
- Good customer focus, agreeing requirements and project managing small projects to completion (I)
- Ability to work independently and within a dynamic, agile team environment (I)
- Ability to learn quickly and share love of new tools and technologies (I)
- Ability to take initiative and proactive attitude to problem solving with a thorough and logical approach. (I)
- Postgraduate qualification in Computing or STEM Subject (S)
- Interest in science and/or mathematics (I)
- Experience of developing scientific software or software with similar challenges (S&I)
- Experience using C++ for software development (I)
- Experience using python for software development (I)
- Experience of development on multiple platforms (Windows, Linux, MacOS) (I)
- Experience of GUI development using Qt (I)
- Experience of unit and system testing (I)
- Experience or understanding of automated testing and continuous integration tools such as Jenkins, Github Actions, Travis or similar (S&I)
- Experience in requirements capture, analysis, and specification (I)
- Experience in working with customers (I)
- Experience in project and/or people management. (S&I)