Hi, I'm Remi. I'm a MSc Computer Science graduate with a passion for technology. Currently I'm developing enterprise web-applications using Spring-Boot and React at Lloyds Banking group.
My career aspiration is to make an impact as a back-end software engineer working on highly scalable, reliable systems.
Please check out my projects and experience below.
Experience | Duties |
---|---|
Software Engineering Graduate @ Lloyds Banking Group, London - Sep 2022 to Present |
|
Test Engineer @ Comxo, Slough - Feb 2022 to Sep 2022 |
|
MSc Computer Science @ Queen Mary University of London - Sep 2021 to Aug 2022 |
|
BSc Physics @ University of Birmingham - Sep 2018 to July 2021 |
|
Web Developer @ Comfort Care Services - Aug 2017 to Sep 2018 |
|
For my MSc Computer science dissertation project, I worked with a German company on an industrial project. The project involved driving healthcare digitalisation by developing a proof-of-concept microservice-based healthcare management system. The system was based on the gateway API pattern. It focused on increasing healthcare integration by increasing interoperability and encouraging adoption through being GDPR-compliant and easier for healthcare providers to implement.
Whereas my previous projects focused on particular parts of a software system, this project proved a challenge in requiring me to consider everything from authentication/authorisation, to automated testing, and desiging a microservice-based system. I was exposed to Java, Maven, and Spring-Boot (Security, Hibernate, Envers). Overall, I feel like the project was a success. I developed a core gateway service and patient service that can be extended by integrating additional services with the gateway. The generic testing methods, JPA, and Olingo make creating a new service easy. Alternatively, the decoupling between microservices mean an API built with entirely different technologies can be integrated.
This project taught me a lot about more advanced back-end technologies such as REST architecture and gRPC. The main challenges was load balancing which was done by splitting the columns of the second matrix2 amongst the gRPC servers and making a single call to multiply matrix1 with a smaller subset of matrix2. This project also introduced me to asynchronous programming, as promises and callbacks were used to wait until all 8 servers had finished before displaying the results to the user. This is something that node.js was particularly suited for.
Developed a simulation of a social network in Haskell, where at random times a user will send a random message to a random user. This is implemented using Haskell's Control.Concurrent libary, each user is simulated using a thread. Each user's information, including their messages is stored as an element of the users MVar. Haskell record types for user and message are also used.
This project introduced me to advanced programming topics (concurrency and parallelism). The importance of choosing the right data structure was seen storing users in a sequence instead of a linked-list which increased performance by 10x.
Developed a command-line app that connects to the twitter api and allows users to search for tweets. In the demo above, the following steps are occuring:
This project introduced me to working with a REST api. Interacting with a sqlite database in Haskell, proved more difficult than in PHP and MySQL as an extra step of parsing data was required.
Final year physics group project which involved using reinforcement learning to investigate the most efficient way of driving a swing. My role in the simulation sub-group involved developing a simulation of a swing-person system that was controlled using motors and followed the same joint angular constraints as a human. A genetic algorithm was to be applied to this simulation.
This project exposed me to managing development projects in larger teams using tools such as GitHub.
Final year physics individual project which involved developing a simulation of the Drossel-Schwabel forest fire model to investigate scale-invariance and self-organised criticality. This project introduced me to the importance of algorithms, as cluster labelling was implmented via the Hosehen-Kopelman algorithm an implementation of the union-find algorithm.
Developed an online QA Audit system when working as a Web Developer at Comfort Care services. Led the project through the full software development lifecycle and worked closely with the users of the system to gather feedback. This led to a final system being developed which saved Auditors several hours a week. I also colloborated with another developer to build a HR Audit system using the QA Audit system as a foundation.
The application had the following functionality:
Developed python program to automate performing technical analysis on stocks using the EMA, MACD, OBV, RSI and Bollinger band indicators. Data was obtained from the yahoo finance api and written to an Excel spreadsheet for further analysis.