Hi, I am

Adil Budak

An aspiring software engineer.

I design and build websites.

About me


Aspiring Software Engineer

Studying in Waterloo

I am currently a 21 year old university student, studying in Waterloo, ON. I am interested in Backend, Cloud and AI/ML. I have 4 previous internship experiences and a couple other personal projects you can view below!


Work Experience

Software Engineering Intern- APIs


At TD Bank

January 2024 - April 2024 (4 months)

- Developed an automated HTTPs SSL and TLS Handshake validation using Node.js and GitHub Workflows that run on every API endpoint to provide developers with real time security insights
- Created a logging library as a private NPM package using Elasticsearch to foster consistency, and uniformizing log formats across 11 API teams to increase efficiency in troubleshooting processes
- Spearheaded a comprehensive unit and integration testing campaign on various legacy APIs to eliminate security risks and increase code coverage to 80%+

Tech used:

  • Node.js as a framework.
  • Elasticsearch as a tool.
  • Github Actions as an automation tool.
  • NPM/Git for library version control.

Software Engineering Intern - Trading Systems


At TD Securities

May 2023 - August 2023 (4 months)

- Developed a config API for trading batch jobs using Hazelcast and Scala, reducing application loading times by 4 seconds, and ensuring consistency across multiple servers to have the same config.
- Created a dashboard with AngularJS and the Spring Framework enabling traders and business analysts to see the net present value, profit and loss curve graphs and similar metrics of bonds/FX/stock trades.
- Optimized the efficiency of an internal trading application platform by implementing caching and aggregation in Scala, generic enough to be used by all trade query protobufs, reducing load.

Tech used:

  • Spring as a framework.
  • Angular/React for front-end.
  • Python for scripting.
  • Scala and Java as languages.
  • Hazelcast for API.

Software Engineering Intern


At TD Bank Group

May 2022 - August 2022 (4 months)

- Worked on developing REST API endpoints that can insert large amounts of payload data into production MongoDB servers.
- Changed existing Flask routes and database handlers to improve code readability and efficiency while retrieving data.
- Used Flask to develop automated audits that run daily using GitHub Actions across multiple platforms such as Sonarqube, Nexus, Terraform and GitHub.
- Worked on internal KPI Dashboard website.
- Worked with Cloud Support teams to dispatch / handle tickets.

Tech used:

  • Flask as a framework.
  • MongoDB for databases.
  • Linux to deploy servers and schedule CRON scripts.
  • GitHub Actions to schedule scripts.
  • Docker to containarize software for reproducibility.

Mobile App Developer


At Boxbrite Technologies

June 2021 - August 2021 (3 months)

- Built an offline-first field service management app for solar technicians with unstable connectivity using React Native for both iOS and Android compatibility.
- Created an image/attachment store with auto data synchronization to a MongoDB Atlas database.
- Created MongoDB Realm Sync server to enable field technicians to save their data locally and whenever data connectivity became available automatically push that data to the cloud

Tech used:

  • React Native as a framework.
  • Mongo Realm for storing data.
  • Realm Sync for offline-first asynchronous data management.

Interests

Backend Development

Experienced with Django, Flask and Node.JS.


Frontend Development

Experienced with Angular and React.


Machine Learning

I've trained multiple machine learning models using Tensorflow and Keras. Currently, I am deploying ML models. (see projects)


Databases

Experienced with multiple databases, most notably PostgreSQL and MongoDB.


Projects

SmartSets


smartsets.adilbudak.com

A flashcard studying application, similar to Quizlet and AnkiDeck. The user can create public or private flashcards and decks, and also share them with another user.

GitHub Repository

Tech used:

  • Django for the backend
  • NGINX and Gunicorn for deployment on subdomain
  • PostgreSQL for the database

JaegerServe


hub.docker.com/r/budakadil1/jaegerserve

This is a machine learning model deployment server, similar to Tensorflow/serving, with the ability to serve multiple models with fast inferences. I have built a custom class for model loading, which also supports versioning. JaegerServe also supports model configs for serving multiple models. See this blog post for more information.

GitHub Repository

Tech used:

  • Bottle.py for the backend
  • Tensorflow for making inferences.
  • Bjoern / CherryPy as a WSGI server.
  • Docker for building an image for easy deployment.

HellGAME Gaming Marketplace


HellGAME is a multi-merchant marketplace platform for the sale of gaming accounts and related digital content. It is built using Django and hosted on Heroku's free dynos - takes around 30 seconds to load if the dyno is sleeping..

GitHub Repository

Tech used:

  • Django Framework for the backend
  • AWS S3 for hosting images and static files
  • PostgreSQL as a database
  • Heroku for deployment and hosting

Flask Face Mask Detection Application


This is an app that predicts if a person is wearing a face mask or not based on a picture. The flask application takes care of the image conversions and sends a request to the Tensorflow/serving application set up on a private server, which sends the prediction that is then displayed in the web app. The flask app itself is deployed on heroku.

GitHub Repository

Tech used:

  • Flask for the backend
  • Tensorflow for building the ConvNet model.
  • Tensorflow/serving for model deployment.
  • VPS instance that hosts the tensorflow/serving docker image.