codes banner image

Who am I?

Hi There! I'm Naufal

Recently graduated from the University of London with a BSc in Computer Science, specializing in Artificial Intelligence (AI) and Machine Learning (ML), earning First Class Honours award. I also hold a Diploma of Information Technology obtained in 2021 from Curtin College. I possess a solid academic foundation in programming, problem identification, and problem-solving, I am also self-motivated and efficiency-driven. I have also demonstrated the ability to learn and adapt to new technologies and excel both independently and as part of a collaborative environment.

I am currently looking for a job opportunity that aligns with my field of expertise including but not limited to: Computer Vision engineer, NLP engineer, Data Scientist, and Software Engineer.

Qualifications

Image of BSc Certificate

BSc. Machine Learning and Artificial Intelligence - University of London (2024)

UK NQF Level VI Diploma - A rigorous degree program that covers core areas such as algorithms, software engineering, machine learning, and data science. Providing strong foundations in both theoretical and practical computing, equipping graduates with skills in emerging technologies and problem-solving approaches essential for the current era.

Image of Diploma of IT

Diploma of IT - Curtin College (2021)

AQF Level V certificate - Completed 12 subjects ranging from technical mathemathics, Unix programming, Object-Oriented programming, to data structres and algorithms.

Image of Google IT Support certificate

Google IT Support Certificate (2021)

Completed 5 courses, developed by Google, that include hands-on, practice-based assessments that are designed to prepare me for entry level roles in IT support.

Image of IBM AI Engineering certificate

IBM AI Engineering Certificate (2022)

Completed this certificate designed by IBM (International Business Machines) which comprised of 6 courses which provided me with practical understanding and implementation of Machine Learning and Deep learning.

Portfolio

2A2S: AI-Augmented Surveillance System

2A2S GUI upon launch

A system to augment off the shelf webcam/CCTV surveillance with motion detection, object detection models, and email alert system. Final year project for BSc in Computer Science at University of London (AI & Machine Learning).

    Features include:
  • GUI
  • Motion detection
  • Object detection
  • Web application dashboard
  • Email alert
  • Logs system with timestamp

PDF Question-Answer AI Application

PDF Chatbot Web App

An NLP 'chatbot' able to comprehend user query and answer based on information in a given PDF file. Making good use of Haystack v1.25's ready-to-use ExtractiveQAPipeline to retrieve relevant excerpts and passing it to the reader for further comprehension. The answers are then scored and presented to the user.

This project does not make use of OpenAI's API nor any other APIs.

How it works:

  1. Extracts corpus (text) data from a PDF
  2. Using TextIndexingPipeline, convert corpus into haystack document object and store them in a DocumentStore
  3. Initialise BM25Retriever and FARMReader
  4. Connect retriever and reader using ExtractiveQAPipeline
  5. Run the pipeline and predict the answer to a given query

Personal website - This very page

My goal in making this website is to make a platform that showcases my professional profile, qualifications, skills, awards, and activities. It is relatively simple, built using HTML 5, CSS 3, and JavaScript.

The page is designed to be user-friendly and easy to navigate. The homepage greets visitors with a simple and elegant design, featuring a brief introduction, and navigation bar that links to various sections of the website. Visitors can easily access any information simply by scrolling thanks to the single page layout. Hosted on GitHub Pages, making it easily accessible to anyone who wants to learn more about my professional profile and achievements.

The design is based on a HTML5UP template which has been quite heavily personalised.

Computer Vision: Object detection with OpenCV

GIF demonstrating the working model on a red toy car

Real time object detection model using OpenCV (cv2) with Haar cascade method. Works with virtually any object, only requires sufficient images to train the model on. Training data is gathered using a python script, can be used using any camera. Model training is done through Ahmadi's cascade GUI Trainer (see link below).

Py_Bot_Paallo - Discord bot in Python

A public Discord bot based on Pyton built using Discord.py library. It is a chat bot that is capable of responding to various user messages. The code that runs the bot is hosted on Repl.it making it available anywhere and viewable by anyone. Uptimerobot is used to continuously ping the repl instance to prevent it from shutting down, making the bot constantly online

    Commands include:
  • $help - returns a list of its features along with the command
  • $status - check whether it will respond to messages or not
  • $activate OR $deactivate - swithces the responding status ON/OFF
  • $odd or even - determines wheter a number is odd or even
  • $roll - roll a game die (1-6)
  • $calc stand dev - takes a set of numbers and calculates the standard deviation
Additionally, Py_Bot_Paallo greets all server members in private chat when they come online.

OtoDecks - C++ Audio mixing app

OtoDecks is an audio manipulation software, best suited for DJ-ing purposes. It consists of a couple of audio players complete with features such as play/pause, load track, and playback controls. It also comes with a built-in playlist; users may add and remove files from said playlist and the playlist is saved to a CSV file making it persistent. Users can simply quit the app, and when they come back the playlist will be loaded automatically. Otodecks GUI

Framework: JUCE

Juce is a free-to-use open-source framework for cross platform application compatible with Windows, macOS, Linux, Android, and iOS. OtoDecks itself is focused on Windows, compatibility with other operating system is thus not guaranteed.

OtoDecks is made as part of the final assignment of 'Object-Oriented Programming'. Grade achieved: A.

My Python projects

This page includes Python projects that may qualify as 'miscellaneous' due to their size/scope. The majority are single file projects with a specific task. The theme ranges from beginner Python projects, to Natural Language Processing (NLP) tasks.

    Projects include:
  1. Text generation: Markov model + transition table
  2. Sentiment analysis: TextBlob

-> Go to 'Python projects' page ->

Awards and Activities

Curtin College Academic Peer Award

Curtin College Academic Peers Award (2020-2021)

Academic Peers have achieved more than 70% in a completed unit and provide voluntary academic support to fellow students.
Awarded for:

  • 1st Trimester 2020
  • 2nd Trimester 2020
  • 1st Trimester 2021

IE UK Certificate

Internship Experience UK 2022 - Technology

Completed a four-day long virtual internship programme where I learn from current actors and stakeholders of the tech industry.

AWS Training certificate

AWS Cloud Practitioner Essentials

Completed the digital course designed by AWS as a stepping stone to prepare for the AWS Cloud Practitioner Exam. I learnt the general structure, technologies, and implementations of various AWS services.
[Not AWS Cloud Practitioner Certificate]

Event volunteer at the Indonesian Consulate General in Perth (2019 - 2023)

Perth, WA
Frequent volunteer for numerous Consulate events, met and greeted guests, handled various goods & foods, general assistance throughout.

Event volunteer for Festival Indonesia 2021

October 2021 in Perth, WA
Volunteered in backstage planning and props management throughout the event.

Skills

Skills I have high confidence in which I picked up througout my learning journey:

  • Python, C, C++
  • SQLite, MySQL
  • HTML & CSS
  • Computer vision: OpenCV
  • Linux OS: Ubuntu
  • Virtual Machines: VirtualBox
  • Space & time complexities
  • Adequate research & troubleshooting skills

Languages

Listed below are languages that I master at professional level or above. I am able to correspond in writing as well as converse fluently in all 3 of them.

  • English - Professional
  • Bahasa Indonesia - Native
  • Français - Professional

Contact me

Feel free to get in touch, always happy to have a chat!