
Ahmed Harmouche
Verified Expert in Engineering
Android Developer
Ahmed is a full-stack engineer with seven years of experience building applications for the photo and video editor apps and medical industry. He worked on award-winning Android applications with hundreds of thousands of monthly active users and has experience with the whole Firebase stack. Besides full-stack development, Ahmed enjoys low-level Android programming and graphics programming using Android NDK and OpenGL ES.
Portfolio
Experience
Availability
Preferred Environment
MacOS, Git, Visual Studio Code (VS Code), Android Studio
The most amazing...
...thing I've developed is a multi-award winning photo editor application that has more than five million downloads.
Work Experience
iOS Developer
Honk Honk Punch Pty Ltd
- Researched the Criminisi algorithm to implement it on Metal for iOS.
- Ported a Lua and OpenGL-based Criminisi implementation to Metal for iOS.
- Converted GLSL shaders to Metal Shading Language and translated Lua code to Swift.
- Wrote a single-file Swift library that performs the Criminisi computation as a series of fragment shader executions. The library renders results to frame buffers and feeds intermediate buffers to subsequent computations.
Android Engineer
Cruise
- Worked on the in-car experience team of Cruise. I was in charge of the in-car UX development of the Bolt and Origin vehicles.
- Developed the first full-screen features of the in-car app in the Bolt vehicles deployed in San Francisco.
- Built full-screen feature, a game that riders can play while they travel to their destination. I built it using Kotlin and Android Views. Kotlin Flows were used heavily.
- Developed the FM music feature in the Bolt vehicle.
- Wrote Jetpack Compose components for the new Origin vehicle's in-car experience. I developed the 1st trip experience and parts of Federal Motor Vehicle Safety Standards (FMVSS) self-certification.
Android Developer
Berbix
- Worked on the client's Android SDK and refactored legacy code to modern standards for the image processing pipeline.
- Reduced memory usage by architecting a reusable buffer system.
- Resolved long-standing bugs related to memory exhaustion.
- Prototyped a machine learning system for automatic object detection and recognition.
C++ Software Engineer
Varian Medical Systems International
- Contributed to high and low-level parts of the software stack, wrote and designed UI elements in C++ and Qt, and worked on the DICOM layer.
- Fixed numerous bugs in the Android app running on a handheld device.
- Improved the overall responsiveness by eliminating ANRs and modernized the outdated app codebase.
Android Developer | Co-founder
VIMAGE App Ltd.
- Developed a photo editor Android application and helped it become a leader in mobile photo animation, reaching more than five million downloads and winning multiple awards.
- Trained and deployed a neural network with PyTorch that selects the sky on a photo. Wrote tools in Python and Java to scrape training data, process the scraped images, train the network, convert the network to TorchScript, and generate data for QA.
- Developed a path-based animation tool using OpenGL ES and OpenCV for triangulation. To avoid the need to rewrite our whole rendering pipeline, I wrote a bridge to bring this tool into our Canvas-based library.
- Built the asset handling stack, including the admin tools for asset uploading (JavaScript, Firebase SDK), the back end for asset processing mechanism (Node.js, Firebase Cloud Functions, DigitalOcean Spaces), and Android side asset caching.
- Wrote a prototype iOS app that can apply dynamic GLSL shaders to photos. Wrote bridges to connect SwiftUI with GLKView and Swift with the underlying C++ rendering engine.
- Brought a spin-off app from conception to production. Being the sole developer of the app, it reached more than 100,000 downloads. Built a cross-platform rendering engine in C++, wrote shaders, and built tooling scripts in Python.
- Wrote a shader editor in JavaScript using Web Components, built a code editor with full GLSL syntax highlighting based on CodeMirror, and wrote automatic UI generation for the uniform parameters in the fragment shader.
- Led a team of five developers, conducted the technical screening of our applicants, and came up with and evaluated the take-home exercises.
Windows Phone Developer
Bitnet Group Ltd.
- Developed online shopping applications for multi-national companies. Implemented multiple check-out mechanisms and worked with the PayPal API. Implemented an automatic background polling mechanism to sync the users' virtual basket with the back end.
- Introduced a way to implement real-time barcode scanning in Windows Runtime apps. Before that, there were no working real-time solutions for barcode scanning, only for Silverlight applications.
- Wrote an app with fully dynamic UI, where all the UI elements, screen flow, and actions were described by a JSON. Wrote a custom rich-text parser and renderer as part of this project.
Experience
VIMAGE App
https://play.google.com/store/apps/details?id=com.vimage.androidI played a key role in handling the effect uploader, OpenGL ES-based rendering tools, our on-device sky segmentation neural network on PyTorch, Firebase back end, and admin tools. I led a team of five developers.
Expose App
https://play.google.com/store/apps/details?id=com.vimage.exposeI built a prototype shader editor in JavaScript, a prototype iOS app to showcase the cross-platform engine, and Python-based utility tools for shader processing.
MedNES
https://github.com/wpmed92/MedNESRadiosheets
https://github.com/wpmed92/xreportI built a template builder and scripting language in JavaScript and shipped it as a library bundled with webpack. The app itself is a SPA built with Angular. I wrote an article about it in a peer-reviewed scientific journal called SoftwareX, made it open-source, and published it on GitHub.
Skills
Languages
JavaScript, Kotlin, Java, C++, Swift, Python, C++14, C++17, C#, HTML, HTML5, CSS, TypeScript
Frameworks
Android SDK, UIKit, Electron, .NET, Qt, Angular, Metal, ImageIO
Libraries/APIs
React, OpenGL ES, Node.js, Core Image, PyTorch, RxJava
Tools
Android Studio, Android NDK, Gradle, NPM, GitHub, Git, Emscripten, Visual Studio, Jenkins, Webpack, Angular CLI, Android Jetpack, Xcode
Paradigms
Mobile Development, Functional Reactive Programming
Platforms
Firebase, Android, iOS, Amazon Web Services (AWS), MacOS, Visual Studio Code (VS Code), Ubuntu, Linux
Storage
JSON
Other
Android Development, Video Editing, Image Manipulation, Mobile App Development, Architecture, Google Play Store, Android App Design, Image Processing, AVFoundation, Full-stack, Jetpack Compose, Machine Learning, Medical Imaging, WebAssembly, CTO, Leadership, User Experience (UX), Optical Systems, App Store, SDKs, Android Architecture, Coroutines, 3D Graphics
Education
PhD in Medical Imaging
University of Pécs - Pécs, Hungary
Doctor of Medicine in Medicine
University of Pécs - Pécs, Hungary