Logo of Huzzle

ūüöÄ Internship

Software Developer Industrial Placement

ūüöÄ Placement Program

Oxford

ūü§Ď ¬£21.6K

AI generated summary

  • The candidate must be currently enrolled in an undergraduate degree program and have the right to live and work in the UK. They should have experience in a Linux environment, programming in Python, and working with web applications or data. Strong knowledge of software development principles and a keen interest in science are essential. Additional desirable skills include advanced concepts and technologies, as well as knowledge of advanced software development principles.
  • The candidate will work with Python and other programming languages to develop web applications, process data, and create tools for data management and analysis. Other responsibilities include maintenance of existing software systems and exploring new technologies.

Placement Program

Software Engineering

‚ÄĘ

Oxford

Apply by Oct 29

Description

  • Are you looking for a 12 month industrial placement? CEDA can offer to a candidate interested in gaining first-hand experience of working in a vibrant field of scientific data handling and delivery. 
  • Within a Linux-based computing environment, the placement will work primarily with the Python programming language. Web and scientific programming may also be required, depending on experience, using other languages such as React, JavaScript, C and Java. 
View more

Requirements

  • Essential:
  • Currently enrolled on an undergraduate degree course
  • Are required or have requested to take a placement year
  • Have the right to live and work in the UK for the duration of the placement
  • Currently undertaking a degree in Computer Science or Engineering, or another relevant scientific discipline with a strong mathematical component
  • Interest in (supporting) science and the work of UKRI/CEDA
  • Experience of working in a Linux environment
  • Experience of programming in Python
  • Experience of web applications or working with data (databases, scientific data, big data, analysis)
  • Knowledge of software development principles (e.g. testing, OOP, modularity, re-usability, documentation, version control)
  • Self-motivated, with good problem-solving and analytical skills
  • Desirable:
  • Knowledge/experience of advanced concepts and technologies (e.g. NoSQL, ElasticSearch, Machine Learning, Cloud, Virtualisation, Docker, netCDF, parallel computing)
  • Knowledge/experience of advanced software development principles (e.g. continuous integration, deployment, branching/forking and collaboration tools)
View more

Education requirements

Currently Studying
Undergraduate

Area of Responsibilities

Software Engineering

Responsibilities

  • Within a Linux-based computing environment, the placement will work primarily with the Python programming language. Web and scientific programming may also be required, depending on experience, using other languages such as React, JavaScript, C and Java.
  • CEDA develops and leads multiple data-centric activities that this post might be involved with, including:
  • Web applications/services to allow scientists to discover and access data set
  • Services for processing and analysing Atmospheric Science and Earth Observation data, including parallelisation and workflow management
  • The JASMIN cloud platform and associated tools
  • Cataloguing tools to enable searching and browsing of detailed scientific metadata
  • Data analytics, visualisation and sub-setting tools
  • Packaging and deployment tools
  • Within CEDA, a wide variety of technologies and tools are being employed/explored. These include:
  • Web: Django, Nginx, Bootstrap, React
  • Databases: SQL (PostgreSQL) and NoSQL (Elasticsearch)
  • Packaging/deployment: Python Pip and Virtualenv, Conda, Docker, Ansible
  • Version control: CI/CD, Git
  • Virtualisation/cloud: OpenStack, object store technologies (s3), container orchestration technologies (Helm, Kubernetes)
  • Data: Pandas, Xarray, NetCDF4, cf-python, Iris, Matplotlib, R, CDO, NCO
  • The role will involve a variety of tasks that might include:
  • Maintenance of existing software systems
  • Development of scripts and tools to perform data management and analysis
  • Design and development of larger software systems/applications
  • Development of Django (python) web applications and web APIs
  • Interactions with scientists/developers
  • Development of tools for working with large data sets and batch processing systems
  • Exploratory work with new technologies
View more

Details

Work type

Full time

Work mode

office

Application deadline

Oct 29, 2023

Location

Oxford

Salary

21600 GBP

Apply by Oct 29