Ramblings related to my work

My current work

I am currently employed as a research associate working on the MaterialsGrid project. My work for this project involves the integration of backend grid systems and the writing of web services to allow the use of these systems. The different services are then combined together into workflows that I have designed, which perform the complete simulation creation, submission and analysis process without requiring user involvement.

The majority of this work takes the form of Java development. However my role also involves system administration in order to develop the grid infrastructure and to keep it operating as required. This system administration ranges from the maintenance of individual computers through to the installation and configuration of complete clusters and involves mainly Linux and Mac computers.

In addition to my development and system administration tasks I am required to analyse requirements for other parts of the system such as different portlets within the project portal. Once I have captured the requirements I then design systems that will fulfill these requirements that are implemented by other project members.

My previous work

All of the research performed as part of my PhD was done in order to satisfy requirements of the eMinerals project. There were two main aspects to this work. Firstly I developed and maintained an integrated grid infrastructure, combining data, computational and collaborative resources. This system became known as the eMinerals minigrid, which is discussed in detail in several documents here. The second aspect of my work was the development of tools to monitor the infrastructure and to allow scientists to easily make use of the available resources.

The main outcome of the development that I performed while working for the eMinerals project is known as my_condor_submit, or MCS for short. This is a job submission system that given a simple input script from the user takes care of the whole scientific simulation process. This process starts with deciding where the simulation should be executed based on machine availability and utilisation. Next it stages any input data and a suitable executable to the chosen resouce, executing the simulation itself. Finally it collects the generated output data and automatically harvests important information, storing it as metadata.

Most of the development for the eMinerals project was performed using Perl, although PHP, HTML and shell scripting were also used. In addition, this work involved the use of databases, primarily Postgres databases that allowed for the handling of important data related to resource availabilty and configuration.

As part of my degree I worked for a relatively small scientific consultancy called Quintessa and their sister company AlphaXML, which is sadly no longer with us. I was employed as a student scientific advisor and an XML consultant and performed many different tasks.

One of the main projects that I was involved with was the development of the XML Schema that is used by the Inland Revenue to define the data that they accept as part of an online self assessment tax return. At the far end of the range of projects I was involved with I worked on the modelling of nuclear waste stored in underground repositories for 100,000 year timescales.