I consider myself to be a polyglot with various interests. If I'm unfamiliar with a language and its technlogies (frameworks, libraries etc), I will teach myself these to get a project done, something I've had to do in and outside of industry. These various interests are:
- Systems Programming. I love understanding how things work at their most basic level. Essentially creating software for software.
- Scientific Computing. My interest in Programming and Computer Science started from my time at University, using Fortran to model the Earths Geomagnetic Field and the Fluid Dynamics of Earths Core.
- Blockchain Development. I'm new to this but will be doing something project wise soon.
- Quant Development. I love C++ and the idea of attempting to develop a basic Low Latency Trading System sounds amazing. It would be great to try this using Rust too.
However, I'm also looking at developing software thats a bit more "general purpose", such as the project I'm currently working on.
- 🌱 I’m currently working on:
- Rust.
- Golang.
- C.
- Modern C++.
- Fortran.
- MATLAB.
- Data Structures & Algorithms.
- Bash Scripting.
- High Performance Computing: I love seeing how HPC can help with Scientific/Simulation problems. I'm keen to start learning about the SYCL framework too.
- Computational Science. Like my repo's show, I love developing Numerical Algorithms to solve Scientific and Engineering Problems.
- Systems Programming: I love knowing how things work under the hood. E.g. Compilers and Operating Systems (Linux).
- Data Science.
- Data Engineering.
- Scientific Programming: Modelling and Simulation of problems in Fluid Dynamics & the Physical Sciences.
- Applied Mathematics: E.g. Numerical Analysis, Linear Algebra, Ordinary/Partial Differential Equations and (Computational) Fluid Dyanamics.
Take a look at these repositories; some of my applications might interest you and might help you out in some way. Or you might look at them and think "Why on Earth has he done it that way, when he could have done it this way!". If thats the case, please let me know as I'm always looking to better myself and my applications.
- 2D Poisson Equation Solver with OpenMP.
- 2D Heat Equation Solver using OpenMP.
- 2D Heat Equation Solver using MPI.
- 1D Wave Equation Solver using MPI.
- Application of the Shallow Water Equations to Problems in Oceanography & Planetary Atmospheres.
- Navier-Stokes Equation Solver for 2D Channel Flow.
- Application of the U-Net Convolutional Neural Network to Classify Salt and Sediment Structures in Oil & Gas Reservoire.
- Classifying Different Images of Clothing.
- Application of Logistic Regression to Identify Customer Churn and Why They Churn.
- A Real-Time Data Platform for Detecting Anomalies in Data.
- C++ Application that Performs Linear and Gaussian Regression .
- Data Warehouse for Music Files Leveraging AWS RedShift.
- ETL Pipeline for Music Analysis.
- A Spam Message Detection Application making use of Spark's ML & Data Pipeline Functionality.
-
Sword Group: September 2019 - November 2019: Geo-Data Scientist.
- Looked into using Natural Language Processing to search for key information regarding Reservoir Formations in reports.
- Using Python, developed software which converted folders of reports from docx to PDF format.
-
Tesco CEC: July 2018 - September 2019: Performance Insight Analyst.
- Automated weekly reports for KPIs such as company performance and staff absenteeism.
- Worked with the Absenteeism Stakeholders to provide a new dashboard using Tableau rather than Excel.
- Worked with the Absenteeism Stakeholders to investigate Absenteeism Rates across the year. This was an important project because Tesco CEC was loosing £2million PA due to staff absences. Technologies used in this project: Python, SQL, Tableau and Multiple Linear Regression.
-
Schlumberger: November 2013 - November 2014: Geophysicist & Data Scientist.
- Assisted Senior Geoscientists with training for clients using Petrel and Techlog software.
- Provided general Data Management solutions for Stakeholders as and when required.
- Joined the BP Chili Data Migration Project. This involved migrating all of BP’s Data Assets from OpenWorks DM Software to Petrel and Studio Manager.
- Acted as a Focal Point for the BP Chili Project in the Schlumberger Houston (Texas) Office. E.g. Producing documentation on the Migration Techniques being employed in the Aberdeen Office.
-
Halliburton: November 2012 - November 2014: Seismic Data Scientist.
- General duties: Seismic (SEG-Y and P1/90) Data Loading/Unloading and Bash scripting.
- Developed reports for clients on the life-cycle of their data assets.
-
University of Edinburgh: 09/2022 - Present: MSc High Performance Computing (Online Part-time).
-
University of Aberdeen: 2014 - 2015: MSc Geophysics.
- Dissertation: Forward Modelling of the Seismic Response of the Sherwood Sandstone Group of the Rhyl Gas Field.
-
University of Liverpool: 2008 - 2012: BSc (hons) Geophysics (Physics).
- Dissertation: Rate of Change of Earth’s Magnetic Field due to Various Outer Core Fluid Flows.
Programming Languages | |
Scripting | |
Data Analytics | |
IDEs & Text Editors | |
Databases | |
Other |