About

Profile image

Here is a little background

Welcome! I'm Adam Bakulu Songambele, a software engineer with a deep passion for Artificial Intelligence.

I have professional experience working at BlackRock, where I spent a year developing secure applications using Java, TypeScript, Angular, and SpringBoot.

In addition to my professional work, I've created a variety of projects in my own time, including:

- A YouTube clone with adaptive streaming using Angular and SpringBoot.

- An ecommerce microservices backend built with SpringBoot.

- A real-time multi-speaker transcription (diarization) system using machine learning in Python.

I am fluent in French, Swahili, and English, which enables me to thrive in multicultural teams and approach problems with a diverse perspective.

Feel free to explore my portfolio to learn more about my work and discover how we can collaborate to create innovative solutions.

Experience

company logo

Software Engineering

Blackrock Investment Management (UK) Ltd.

JavaSpringbootTypescriptCSS3Angular JSBash ScriptingMySQLAzure DevOpsUbuntu Server

09/2022 - 09/2023

  • Enhanced Security Applications: Developed robust front-end experiences using Angular and TypeScript for internal security applications.
  • Backend Development: Designed and implemented backend systems with Java and SpringBoot in an Azure CI/CD environment.
  • Legacy System Modernization: Successfully migrated a legacy JSP application to a modern Angular UI, significantly improving usability.
  • Backend Revamp: Rewrote critical components of the SpringBoot backend to support the front-end migration, enhancing overall performance and user experience.
  • Agile Development: Collaborated in a fast-paced sprint-based environment to deliver high-quality software solutions.

EDUCATION

Skills

Tailwind Css
Nginx
Python
Javascript
AWS
Java
Springboot
Typescript
Ubuntu Server
HTML5
Docker
Sanity
Github Actions
CSS3
Android
Angular JS
Azure DevOps
ReactJs
NgRX
Bash Scripting
MySQL
Github
Next Js

Projects

1 of 4: Youtube clone

arrow_forward
JavaSpringbootAngular JSTypescriptHTML5CSS3NgRXMySQLDockerUbuntu ServerDigital Ocean

In my free time, I developed a fully functional YouTube clone featuring a robust front-end built with Angular and TypeScript, and a powerful back-end developed in Java with Spring Boot. The application supports Jwt with token invalidation, user interactions such as like, comments, adaptive streaming, video previews, and video uploads, all seamlessly integrated using FFMPEG and much more...

Key features include:
 •  Adaptive Streaming: Implemented using advanced techniques for smooth video playback, including automatic m3u8 manifest generation for adaptive streaming with Redux over HTTP.
 •  User Interactions: Fully functional comments section, playlists, and video history tracking.
 •  Spring Boot Security: Leveraged security filters, authentication with roles and permissions, and JWT tokens for added security.
 •  Redux Integration: Used NgRx for efficient state management and media transfer over HTTP.
 •  Database Management: Deployed a MySQL database on Amazon RDS for reliable data storage.
 •  Dockerized Deployment: Containerized both the front-end and back-end using Docker, hosted on a private Ubuntu VPS.
 •  User Management: Included features for user profile updates and handling different role tiers.

This project showcases my ability to build complex, secure, and scalable web applications using modern web technologies and best practices.

2 of 4: Personal Website

arrow_forward
NginxUbuntu ServerTypescriptTailwind CssReactJsNext JsSanityGithub ActionsDocker

I built a robust and secure portfolio website utilizing React, TailwindCSS, Next.js, and Docker. The project involved setting up a CI/CD pipeline with GitHub Actions, configuring a self-hosted Ubuntu server with enhanced security measures, and establishing an Nginx reverse proxy. The result was a high-performance website with excellent security ratings.

Key features include:
 •  Modern Frontend: Developed using React and TailwindCSS for a mobile responsive and dynamic user interface and implemented with Next.js for server-side rendering and improved SEO.
 •  Containerization: Utilized Docker for containerization, ensuring consistent development and production environments.
 •  CI/CD Pipeline: Set up GitHub Actions for continuous integration and deployment, automating the build and deployment process.
 •  Secure Server Setup: Deployed on a self-hosted Ubuntu server and configured SSH with asymmetric keys for secure access. Implemented IP-banning and firewall to mitigate unauthorized access attempts.
 •  Automated SSL Management: Set up automatic SSL certificate renewal with Certbot using a cron job to maintain secure HTTPS connections.
 •  Nginx Reverse Proxy: Configured Nginx as a reverse proxy for efficient traffic management. Optimized client configurations for buffer handling and performance.
 •  Security Enhancements: Achieved A+ rating on SSL Labs for SSL configuration. Attained A rating on SecurityHeaders.com for HTTP security headers.
 •  Content Management: Sanity.io was used to handle content management, allowing the site's content to be updated without requiring any re-deployment.

Through this project, I gained extensive experience in modern web development practices and security implementations. I learned how to efficiently use React and TailwindCSS to build responsive interfaces, leverage Next.js for server-side rendering, and employ Docker for consistent environment management. Setting up a CI/CD pipeline with GitHub Actions enhanced my understanding of automated deployments. Additionally, configuring a secure server environment, including SSH with asymmetric keys, IP banning, and automated SSL renewal, taught me valuable lessons in server security and maintenance. Implementing an Nginx reverse proxy with client optimizations and achieving high-security ratings provided deep insights into web security best practices.

3 of 4: Real-time speech transcription

arrow_forward
PythonJupyter Notebook

I developed a real-time speech to text transcription tool, using various machine learning techniques for unsupervised clustering and speech translation. This tool was focused on transcription in a multi-speaker context.

Key features include:
 •  Real-time voice clustering: This program was able to both learn and differentiate between mutliple speaker's voices in real-time. This was done my processing the signal and applying hierarchical clustering to voice signal data points on the fly.
 •  Transcription: The text was transcribed after the voices segments were analysis as a post-processing stage using open AI-Whisper and assigned to the correct speaker with a 92% accurray.
 •  Speed and portability: This was achieved by leveraging different approaches namely multi-processing and multi-threading to allow the program to run on a portable device (Raspberry pie).

This project project showcases my ability to build challenging features using my understanding of machine learning.

4 of 4: Part of a Winning Team in Hackathon

FlaskPythonHTML5CSS3Jupyter Notebook

In 2021 I was part of a winning team in a University Hackathon contest that was themed around a nuclear fallout. Our project was named Fallout Hotel and utilised machine learning to determine how some radiation could be spread in the event of a fallout. The goal was to allow players to see their risk of exposure to radiation based on the hotel they selected to spend their holiday at in this Post-apocalyptic world. We then used Google's API to render pins for the hotels on a Map.

Key features include:
 •  Predict chance of radiation: Used a Kaggle dataset to determine through ML the danger zone of radiation exposure.
 •  Proximity of hotel to danger zone: Used Google API and Built functions that determined how close a hotel the player had chosen was to a danger zone and their chance of getting some cool mutants powers.
 •  Web app: We used flask to set up the web app, using HTML and CSS on the front end

This project project showcases to work in a team and come up with a creative.

Contact Me

Want to get in touch? Let's Talk.

Email me

Manchester, United Kingdom