Skip to main content

Information About Adam - Dunfermline trainer

Profile Picture

Adam's profile picture

References

This is how 2 referees rated Adam:

Reliability

Trustworthiness

Professionalism

Badges

Specialisms Taught

Java

Hourly Charge
Advanced £30.00

Python

Hourly Charge
Advanced £30.00

Map Location

Personal Description:

I am 22 years old and recently graduated from Edinburgh University with a first class Bachelors degree in computer
science. I was born in Scotland but I am currently traveling in Latin America, where I am volunteering and learning
Spanish. I am looking to get a computer science related job where I can be an important part of the team through
bringing hard work and fresh ideas to the table. I am a skilled developer in Python and Java with many projects on
github. My main area of interest is machine learning but I have a passion for solving any complex software
engineering task!

Training Experience:

Private Tutor, Remote - Computer Science, Mathematics
I have tutored throughout university and into my travels. Throughout university I ran a ‘coding club’ for children aged between
10-12 years of age. This was an extremely rewarding job as I got to see the students go from having no knowledge about writing
programs to building fun games and completing small hacking challenges I would create. After university, and to this current date
I have moved to tutoring GCSE up to A-level math, computer science and have a couple students who are in university that want
assistance with final year coding projects, I currently have a student who I am helping with the development of an android app! I
love this job as it has given me a really deep understanding of a lot of topics and I get to help people improve!

Deep learning - Python (PyTorch, Pandas, Numpy), GoogleCloud - I and two fellow students improved the
performance of a convolutional LSTM recurrent neural network used by a non-profit company to predict future cloud cover over
areas of land using satellite imagery. We improved this by applying a training method called ‘teacher forcing’ to the network,
resulting in more accurate and clearer results. We used GoogleCloud to train and test the neural network and Pythons PyTorch to
implement the architecture. A full report on this project is on my github under the ‘satflow’ repository.

Text Technologies & Search Engines - Python (Pandas, Numpy), MongoDB, GoogleCloud - I was
part of a team who developed a song lyrics search engine on a large dataset of around 61 million song lines. This project involved
implementing efficient algorithms (In python) for searching through and retrieving documents from the dataset. MongoDB was
used to store the large dataset, and we used the Python API for MongoDB to interact and retrieve results. Finally the search engine
was run through GoogleCloud and hosted on the web. I was involved in all aspects of this project and gained good knowledge in all
of these areas.

Navigation - Python (SKlearn, Pandas, Numpy) - I was part of a project where our team developed a prototype for
an autonomous robot with the goal of collecting trash in a lake. I was responsible for the autonomous navigation of the robot. I
developed an algorithm which used K-means clustering (implemented using SKlearn) to learn areas of the lake which were likely
to contain more trash, thereby resulting in the robot searching these areas more frequently. Developing and testing this
algorithm required working with JSON and GEOJSON files used for real world mapping.

Navigation - Java (Xgraph, Maven, Mapbox, GEOJSON, JSON) - I was responsible for the development of a
navigation algorithm for a virtual drone. This project was implemented in Java and gave me a solid knowledge of the java
programming language and the concept of object-oriented programming. This project also dealt with JSON and GEOJSON files for
storing information on where and how the drone could travel.

Solana Escrow DAPP - Rust, Python, JavaScript (React, NextJS, Anchor, MongoDB, Flask, Pandas,
JSON) - Myself and my friend have been developing a side project decentralised app on on Solanas blockchain. This project was
an idea we came across when discussing how we wanted to maintain our programming skills to a high level after completing
university in preparation for getting a job. This project has introduced many brand new technologies such as the anchor
framework which allows simpler smart contract development. I have also been learning React off the back of this project, which is
required to create the front end of our app, this has been extremely insightful and I have enjoyed implementing functionality
which can talk to the smart contract via javascript packages. This project also requires the implementation of a second back end
implemented in Pyhton using the Flask web framework. This is required to store and manage data which is stored off-chain. See
this project in my github under ‘not-an-escrow-app’.

Training Approach:

The great thing about teaching programming is that it is quite easy to make it fun! You can incorporate concepts into making games, solving challenges and practical problems. This makes the student really think about how they should be implementing the concept and gives them a clear idea of when and how we should use it! I have always made this a priority when creating material for my coding club. Although it is sometimes really difficult for students to implement fresh material into some hands on problem, it forces them to have a deep understanding of what is going on and this has a great benefit to the overall learning compared to the teacher trying to explain with examples… An example could be teaching for loops. I could try to explain for loops to the student and show some examples or I could give the student a list of strings, each containing a different name at each index position of the list. I could then ask them to use a for loop to iterate through every element in that list to find if the name 'John' is in the list. For the student to succeed here they need to understand that the for loop is going to iterate through each element of the list one-by-one and we must then check if each element is equal to the string 'John'. The student first must understand exactly what a for loop is fundamentally doing and they also gain hands on experience of solving a problem where a for loop is required.

Tutor Resources: (free to download)

Please login or register to download tutor resources.

Native Language: English (British)
Availability: Weekends / Weekdays (all times)
References Available: Yes (✔ On File)

Qualifications:

  • University of Edinburgh (2022) - Computer Science (Bachelors) (✘ Not On File)
  • Woodmill high school (2018) - Mathematics, Physics, English - Higher (School) (✘ Not On File)

Tags: Dunfermline Java trainer, Dunfermline Python trainer, Dunfermline Advanced Java trainer, Dunfermline Advanced Python trainer