A A A

RSD is recruiting a Research Software Developer

By Mayeul D'Avezac, on 28 September 2015

UCL’s Research Software Development group is looking for a new colleague and software developer! We work across college developing high-quality software in collaborations with scientists from all research domains. This post is funded for 2 years in the first instance.

The research software development group designs, extends, refactors and maintains research software across all subjects area. Whether it means using python to bring up a database of Sumerian writings, parallelising Fortran codes for surface catalysis simulations, adding red blood cells to a C++ Lattice-Boltzmann simulation of blood-flow dynamics, refactoring DNA forensics code in R, or designing a modern compressed sensing library for C++11 and python, we do it all, bringing specialist  programming expertise, modern development practices (CI, TDD, Agile…), and engineering rigour to research software development. We provide expert expert software engineering consulting services to world-leading research teams, and work with scientists and scholars to build software to meet new research challenges.

If the following describes you, then you should consider working with us:

  •  You have created and maintained software to address advanced research problems in one or more fields
  • You can rapidly assimilate understanding of new scientific questions, and quickly connect research needs to software requirements
  •  You are committed to software development best practices, and know how to adapt these to research contexts
  • You are expert in one or more languages and platforms used for scientific computing, and are keen to expand your knowledge.

For more details check this advert.

UCL welcomes EPSRC Research Software Engineering Fellows

By James P J Hetherington, on 15 May 2015

EPSRC has announced a pilot call for Research Software Engineer Fellowships .

This is an exciting step towards the development of a long-term career path for research programmers, something we’ve been struggling towards for a long time.

UCL will be very keen to support the best candidates in applications to this fellowship.

We’re committed to a dual academic-and-support model for the RSE role, so we welcome great candidates who seek a joint position in both the Research Software Development Group and a UCL academic department. Interested candidates should get in touch with me at j.hetherington@ucl.ac.uk. I can help you make contact with departmental colleagues.

UCL is one of the best places on the planet to be a programmer-researcher.  We think future leaders of the research programming community will benefit from basing their fellowship in our growing, boundary-pushing research software development group.

Recruiting Research Software DevOps Specialist

By James P J Hetherington, on 13 February 2015

The UCL Research Software Development Team is building automated testing and deployment infrastructure for cutting edge highly parallel scientific software developed by the university’s research community.

For these state of the art simulations running on local and national supercomputing infrastructure, the research community is increasingly employing continuous integration and automated testing approaches to ensure that the software implements the intended mathematics and science correctly.

We are therefore constructing a platform to allow continuous integration of scientific software at high core counts, and with a variety of platforms, toolchains, and environments. We are seeking a skilled contract systems engineer and DevOps specialist to help us with this.

The appointed contractor will work with the Research Software Development Team and the Research Computing Platforms Team, who manage UCL’s supercomputers, to extend our Jenkins-based automated testing platform to make use of the power of our 7000 core cluster, to support virtualisation and containerisation for reliable independence of test payloads, to add to the capability of the platform by configuring test nodes for a variety of platforms, and to discover, manage, and authenticate tests and users from across the college’s research portfolio.

Please contact rc-softdev (at) ucl.ac.uk if you are interested.

Required Skills

  • Advanced Linux systems administration experience, especially RHEL, Scientific Linux
  • Advanced automation with Puppet
  • Containerisation and virtualisation with Vagrant and Docker
  • Virtual machine management on Linux with KVM/QEmu.
  • CI configuration with Jenkins
  • Version control with Git and GitHub

In each of the above cases we would consider candidates with extensive experience in an alternative toolchain and basic familiarity with our preferred technology (e.g. we would prefer Puppet experts, but would consider candidates with Chef expertise and basic familiarity with Puppet)

Desired Skills

  • Configuration of cluster schedulers, especially Oracle Grid Engine.
  • Distributed file systems (especially Lustre)
  • Broad familiarity with a variety of language and tool families used in research (e.g. Python, Pip; Ruby, Gems; Perl, Cpan; Haskell, Cabal; Java, Maven; Fortran/C++, CMake)
  • Integration of Windows systems with Linux automation environments (puppet on windows, BitVise SSH, PowerShell, Chocolatey)
  • OSX admin (brew, cask)

 

UCL Affiliates with Software Carpentry Foundation

By James P J Hetherington, on 22 January 2015

Software Carpentry is a volunteer organisation whose goal is to make scientists more productive, and their work more reliable, by teaching them basic computing skills. Founded in 1998, it runs short, intensive workshops that cover program design, version control, testing, and task automation. In October 2014, a non-profit Software Carpentry Foundation was created to act as a governing body for the project.

UCL is London’s Global University, founded to open up education to all on equal terms. Today our outstanding research and innovative teaching drive entrepreneurial solutions to the world’s major problems.

UCL Research IT Services is UCL’s organisation supporting and enabling computational research. Committed to sharing the most effective ways of using computers for research, we offer practical, hands-on training in high performance cluster computing and research software development. We are excited to be part of the software carpentry community, and organise software carpentry events for UCL students and research staff three times per year.

By affiliating with the Software Carpentry Foundation, organisations demonstrate their commitment to teaching best practices for scientific computing, contribute charitably to support a sustainable future for the organisation, and help shape the future of digital research.

UCL is proud to become an affiliate of the Software Carpentry Foundation

(See original news posting)

UCL Research Software Dashboard Developer

By James P J Hetherington, on 9 December 2014

The University College London Research Software Development Initiative is seeking a full-stack web developer to work on its Research Software Dashboard project from January 2015 to July 2015.

This is a new project, starting from scratch, to develop software to curate, promote, and manage the University’s wide portfolio of cutting-edge scientific and scholarly software.

The project will provide an overview of the research software output of the college for scientists, managers, funders, investors and clients, including both open-source software and software being commercialised through the university’s business and consulting arms. It will integrate with the University’s code management infrastructure, based on GitHub Enterprise, software testing infrastructure based on Jenkins, and commercial software sales platform e-Lucid.

Software is an increasingly important scholarly output for research alongside publications, and this project will help retain UCL’s leadership in this important aspect of twenty-first century research.

Person Specification

Essential:

  • Full-stack web development expertise
    • Design and layout skills (sass preferred)
    • Client-side Javascript. (jquery preferred)
    • Server-side programming skills with an open source dynamic framework
      • Python with Django or Pyramid preferred
  • API design and integration skills
    • Experience with RESTful API design and consumption
  • Commitment to software development best practice
    • Test driven design
    • Continuous integration

Desirable:

  • DevOps and systems skills
    • Automated deployment (preferably Puppet)
    • Web server management and configuration (Apache or Nginx)
    • Virtualisation and containerisation (vagrant)
  • Experience of research (e.g. MRes, MPhil, PhD…)
  • Experience of semantic web technologies
  • Agile software process experience (e.g. Scrum or XP…)
  • Experience with the GitHub API
  • Experience with Jenkins continuous integration framework
  • High-performance computing experience (Schedulers, MPI)
  • Understanding of UK Research ecosystem (REF, RCUK funding models, research metrics)
  • Experience with technology transfer and research commercialisation

Those interested in being involved in this important project on a freelance or contractor basis should get in touch with James Hetherington (j.hetherington@ucl.ac.uk) for more information.

UCL Research IT helps to win big-data research grant

By James P J Hetherington, on 1 December 2014

Compressive sensing is a recent breakthrough in information theory that has the potential to revolutionise the acquisition and analysis of data in many fields.  UCL Research IT Services (RITS) are an integral part of a team that recently secured grants from the UK research councils to develop compressive sensing techniques to address the challenge of extracting meaningful information from big-data.

The techniques developed will find application in a broad range of academic fields and industries, from astronomy to medicine.  They will allow high-fidelity astronomical images to be recovered from the overwhelming volumes of raw data that will be acquired by next-generation radio telescopes like the Square Kilometre Array (SKA).  The new techniques will also be of direct use in neuro-imaging to accelerate the acquisition time of diffusion magnetic resonance imaging (MRI), potentially rendering its clinical use possible.

Dr Hetherington of RITS’s Research Software Development Team said: “Software which embodies these research results will be readable, well-engineered and efficient to run on the world’s fastest computers, and will be an important output of this research, alongside research publications.” Funding from the Engineering and Physical Sciences Research Council’s Software For the Future Programme which emphasises the importance of sustainable research software, will be used to fund members of the RITS team working to this aim.

Dr McEwen of UCL’s Mullard Space Science Laboratory (MSSL) and leader of the project said: “UCL’s Research Software Development Team, led by Dr Hetherington, were an invaluable partner in securing funding for this project and will be instrumental in its success. Their unique expertise in combining both scientific computing and professional software development will ensure that the software produced will be able to fully exploit high-performance computing architectures, while also being readily usable by the community.”

For more details see: http://www.ucl.ac.uk/mathematical-physical-sciences/maps-news-publication/maps1431

Square Kilometre Array

Research Computing Seminar

By Susanne Claus, on 21 October 2014

The next research computing seminar will take place, Friday (24th of October), 1pm-2pm.
Professor Daniel Kroening , Department of Computer Science, University of Oxford, will present a seminar entitled “Reasoning about IEEE Floating-point Arithmetic with Abstract Conflict-Driven Learning”.

Date: Friday, 24th of October 2014
Place: Wilkins Haldane Room
Time: 1:00pm – 2:00pm

Abstract:

Conflict-Driven Clause Learning is the technique that is enabling for the high performance of propositional satisfiability solvers. I will present a generalisation of Conflict-Driven Clause Learning that permits reasoning within an abstraction. I will show an exemplar, the domain of intervals over floating-point values, and its application to difficult problems in program analysis.

Speaker Bio:

Professor Daniel Kroening’s research focus is formal methods for the correct construction of hardware and software systems, with a focus on automated methods for checking compliance of an implementation with a specification. Techniques include model checking and automated testing.

He is particularly interested in applying these methods to practical hard- and software implementations given in languages like C or C++, or HDLs such as Verilog and SystemC.

Recruiting a Research Software Developer

By James P J Hetherington, on 5 August 2014

The UCL Research Software Development Team works with researchers across college to ensure UCL retains the highest standards of excellence in computational research. We are recruiting one additional research software developer for the team.

In this role, you will design, extend, refactor, and maintain scientific software across all subject areas. You will modify legacy software to run on state-of-the-art high performance computing infrastructure, provide expert software engineering consulting services to world-leading research teams, and work with researchers to build software to meet new research challenges.

You have created and maintained software to address advanced research problems in one or more fields. You can rapidly assimilate understanding of new scientific questions, and quickly connect research needs to software requirements. You are committed to software development best practices, and know how to adapt these to research contexts. You are expert in one or more languages and platforms used for scientific computing, and are keen to expand your knowledge.

For full details, see the advert.

Recruiting a Research Software Developer

By James P J Hetherington, on 3 January 2014

The UCL Research Software Development Team works with researchers across college to ensure UCL retains the highest standards of excellence in computational research. We are recruiting one additional research software developer for the team, appointed for two years in the first instance.

In this role, you will design, extend, refactor, and maintain scientific software across all subject areas. You will modify legacy software to run on state-of-the-art high performance computing infrastructure, provide expert software engineering consulting services to world-leading research teams, and work with researchers to build software to meet new research challenges.

You have created and maintained software to address advanced research problems in one or more fields. You can rapidly assimilate understanding of new scientific questions, and quickly connect research needs to software requirements. You are committed to software development best practices, and know how to adapt these to research contexts. You are expert in one or more languages and platforms used for scientific computing, and are keen to expand your knowledge.

For full details, see the advert.

Call for Projects

By James P J Hetherington, on 12 November 2013

The Research Software Development team makes a termly call for free software development effort in line with UCL’s research priorities. The fifth such call has now opened. Proposals should be completed according to the submission guidance and emailed to rc-softdev@ucl.ac.uk. Key staff from submitting groups should be available in the weeks following shortlisting for discussions. Proposals will be reviewed by our academic governing bodies according to published selection criteria. The amount of effort allocated will be determined by these bodies in the light of the proposals, but will be around one to two person-months. Resubmission of proposals which have previously been submitted is welcomed.

In addition to this free call, research teams preparing grants involving software development should consider bringing in the team as collaborators through grant-funded software development effort, costing programming effort from our developers into the grant – we can provide fractional or full time effort as needed, throughout the project or at critical intervals.

The timeline for the current call is:

12/11/2013 Call opens.
06/01/2014 Call closes
16/01/2014 Shortlisting
13/02/2014 Final selection
01/03/2014 Approximate project start