Staff - Non Union
Job Category
M&P - AAPS
Job Profile
AAPS Salaried - Information Systems and Technology, Level B
Job Title
Scientific Software Developer
Department
CHIME Administration | Department of Physics and Astronomy | Faculty of Science
Compensation Range
$6,251.00 - $8,986.00 CAD Monthly
The Compensation Range is the span between the minimum and maximum base salary for a position. The midpoint of the range is approximately halfway between the minimum and the maximum and represents an employee that possesses full job knowledge, qualifications and experience for the position. In the normal course, employees will be hired, transferred or promoted between the minimum and midpoint of the salary range for a job.
Posting End Date
February 14, 2025
Note: Applications will be accepted until 11:59 PM on the Posting End Date.
Job End Date
Feb 9, 2026
Job Summary
At CHIME, chime-experiment.ca, we develop software that supports groundbreaking scientific research in astrophysics. As a Software Developer on our team, you will collaborate with scientists and engineers to create software solutions for CHIME’s research objectives. This role involves tackling complex challenges and contributing to a significant scientific project.
CHIME is a radio telescope that maps the 21-cm signature of neutral hydrogen in the largest volume of space ever surveyed, scans the cosmos for Fast Radio Bursts and monitors all of the Milky Way Pulsars visible in the Northern Hemisphere. CHIME scans the entire northern sky every day and processes over 6.4Tb/s of sky data 24/7 on a large on-site GPU cluster. We are currently engaged in a major upgrade of CHIME’s GPU-based computing infrastructure.
The successful applicant will work with both remote and on-site members of the CHIME team to drive the GPU upgrade and migration efforts across various subsystems within CHIME’s data acquisition system.
Key responsibilities include:
- Developing high throughput streaming systems for real-time processing, primarily in C++.
- Migration of cluster configuration and management software
- Management systems, e.g. tracking and moving data around (custom Python); keep tracking of the telescope configuration (Python+MySQL backend, PHP frontend); monitoring the telescope status (Prometheus and Grafana).
Where exactly the developer spends their time will be determined by their strengths, interests and where the most pressing needs are for the project, but a successful candidate will touch all of the above at some point.
Tasks will include consulting with scientists and engineers to develop use cases for data processing and storage, also working with a team of software engineers and scientists to design, develop, install, deploy, test and maintain the software, and providing support to understand and operate the system.
This position is planned to last for a period of one to two years.
CHIME (chime-experiment.ca) is an exciting, cutting-edge high-profile experiment in Cosmology, Gravity and High-Energy Astrophysics. We are looking for a skilled developer who is enthusiastic about science to strengthen our software team. We are looking for an exceptionally motivated candidate who loves to see the impact of their work.
ORGANIZATIONAL STATUS
Reports to the UBC Investigators of the CHIME Project (Faculty, Professor) and to the CHIME Project Manager. Also interacts with scientific staff and programmers on the CHIME project at UBC, McGill University, University of Toronto and the Dominion Radio Astronomical Observatory and elsewhere.
The work environment is a Physics lab, a friendly and informal environment, with flexible working hours. The team consists of skilled developers (staff and postdoctoral scientists with a heavy software leaning), and physics graduate students, whom the new developer would help mentor.
WORK PERFORMED
- Work on migration of subsystems in the real-time data acquisition pipeline once the older generation hardware being replaced with newer hardware with expanded processing and abilities.
- Work on automation of application deployment and configuration management (e.g ansible)
- Maintain and enhance existing data-quality monitoring framework for the overall operation of the telescope
- Design and develop testing and documentation procedures.
- Participate in weekly meetings to provide updates on project.
- Design, develop, install and maintain systems for remote control and monitoring of the HPC system and its associated infrastructure using web and mobile-based platforms.
CONSEQUENCE OF ERROR
Good technical judgement by the candidate will result in a well-maintained easy-to-use instrument tuned to its scientific purpose. Good design decisions will result in well-written code, with clear software implementation of algorithms, which is easy to test, enhance and maintain
Poor judgement can result in damage, lost observing time and sensitivity, delays and reduced productivity for the entire collaboration.
SUPERVISION RECEIVED
Much of the work will be performed in a team environment. Overall supervision will come from the UBC faculty members and the Project Manager (a UBC Scientific Engineer). The employee will also be expected to interact constructively with his/her counterparts at UBC, McGill University and the University of Toronto and the Dominion Radio Astronomical Observatory.
SUPERVISION GIVEN
The applicant will not directly supervise anyone, though they will need to work with CHIME research group members at all levels, and they are expected to offer minor training to other members of the team.
Minimum Qualifications
- Undergraduate degree in a relevant discipline. Minimum of two years of related experience, or the equivalent combination of education and experience.
- Willingness to respect diverse perspectives, including perspectives in conflict with one’s own
- Demonstrates a commitment to enhancing one’s own awareness, knowledge, and skills related to equity, diversity, and inclusion
Preferred Qualifications
- C/C++ application development and maintenance.
- In depth experience with Python
- Experience in programming GPUs in either CUDA or OpenCL.[Preferred, not essential]
- Ability to work in a fast changing environment and to learn new tools and applications quickly and independently.
- Strong problem solving skills and attention to detail.
- Experience with concurrent programming, in particular to run large scientific calculations
- Experience in troubleshooting operational anomalies in HPC systems is an asset.
- Database and web-based programming [bonus].
- Good team player with strong focus on delivering results to meet the scientific needs.
- Self-motivated and demonstrated ability to work on different projects concurrently and to manage deadlines.
- Excellent communication, organizational, and interpersonal skills in written and spoken English.