Mehedi Hasan Khan
Verified Expert in Engineering
Software Engineer and Developer
Dhaka, Dhaka Division, Bangladesh
Toptal member since November 13, 2013
Mehedi is a top software engineer who builds delightful mobile apps and related software systems. With nearly a decade of experience designing, architecting, and developing native Android and iOS apps, he has gained expert knowledge of Android/iOS systems, SDLC, Java, Swift, Kotlin, REST APIs, Scrum, clean architecture, and more. Mehedi is a team player and master communicator with a curious mind and an entrepreneurial mindset.
Portfolio
Experience
- Android - 10 years
- Java - 8 years
- Software Architecture - 7 years
- Git - 7 years
- Kotlin - 5 years
- Swift - 4 years
- iOS - 4 years
- Machine Learning - 2 years
Availability
Preferred Environment
MacOS, Xcode, Android Studio, Linux, Agile Software Development, Android, iOS, IntelliJ IDEA, Jira, Git
The most amazing...
...app I've helped build is called Zero, a revolutionary fasting tool and healthy living companion loved by millions.
Work Experience
Mobile Engineer
Eastside Healthcare Staffing LLC
- Added single sign-on (SSO) to UKG using Okta as the identity provider and updated the Android and iOS apps to enable single sign-on.
- Developed a reliable location tracking system that can track the location of a clinician's phone during their shifts at regular intervals. The system can work offline and log locations even if the app is not running.
- Built a CI/CD system using GitHub Actions and Xcode cloud to develop and deploy apps to Firebase app distribution, TestFlight, and respective app stores.
- Took the apps through the Play Store and App Store's review process. Made changes and implemented reasonable workarounds to approve the apps (with their requirements for background execution and long-term location tracking).
Software Engineer III
Zero Longevity Science
- Put together a guideline and coded a foundational framework for incorporating Jetpack Compose into the project to build all new UIs.
- Prepared a presentation introducing the Compose framework and its different aspects and presented it to the Android team so that other team members could get up to speed with the new technology.
- Refactored the client-side reminder engine for storing and scheduling all local notifications, making it more efficient and capable of executing asynchronously in a thread-safe way and avoiding unnecessary loading or retention of data.
- Rebuilt screen containing tons of charts and stats using Jetpack Compose; UI rendering got twice as fast. Optimized data loading (using co-routines) and retention (non-UI data were cached to a room database). Memory footprint reduced by around 60%.
- Reviewed PRDs and designs to provide early feedback and technical opinions on feasibility, probable implementation paths, and implications. Wrote TDDs and Jira tickets for complex features.
- Designed a new Git workflow (based on Gitflow) to make code reviews and releases easier by discouraging cherry-picking. Tweaked the existing release process to be more automated (using GitHub Actions and CircleCI) and streamlined.
Software Engineer
Zero Longevity Science
- Took the initiative to make a single activity architecture cleaner by using Android Jetpack architecture components and conforming more strictly to MVVM.
- Composed a guideline and roadmap to use Kotlin coroutines appropriately for async operations and replace the existing callback-based way of doing async tasks where applicable.
- Took ownership of complex feature implementations, i.e., challenges, personalized fasting zones, etc. Communicated across teams to clarify requirements, update documentation, and help with on-time completion.
- Put together a CI/CD system equipped with Git hooks, Gradle plugins, and Python scripts for uniform code formatting and styling, code quality checks, report generation, automated testing, and release.
- Created a framework for building complex dynamic forms with configurable data validation, caching, and submission features.
- Developed a framework for A/B tests to work with both Firebase and Apptimize.
- Built a framework for faster development of new paywalls with support for A/B tests, offers, and campaigns.
Software Engineer
Duolingo
- Developed new features specifically targeted to users in China—for example, user signup via WeChat, share via WeChat and earn rewards, etc.
- Created A/B tests to battle-test new features, UX changes, optimizations, etc.
- Wrote custom UI components—for example, a UI widget that can take country code and phone number input, validate it on the fly, and then transform it for verification code input.
- Implemented fluid animations with Lottie, and optimized animation loading, replay, and memory footprint.
- Examined memory usage to find possible optimization points, memory leaks, etc., and fixed them.
Android/iOS Developer
iVerified
- Improved the scanning of physical identity documents using the device camera by optimizing the detection and processing pipeline.
- Used OpenCV and machine learning to detect ID documents better and classify the data.
- Used Tesseract to extract data from image segments.
- Designed and implemented a two-way data sync process, ensuring that the documents and verification data were securely kept in sync between the server and the apps.
- Set up continuous deployment (testing, building, signing, and releasing) with Fastlane and a remote Jenkins server.
Senior Android/iOS Developer
A0Paper Inc.
- Wrote SDKs in Java and Swift for Treasuredata based on their official SDK. Improved local caching, optimized memory usage, added scheduled batch uploads in the background, and improved the fluidity of the API.
- Wrote the 1stScreen SDK for Android (Java) and iOS (Swift) to help collect numerous analytics data, with device data collection made easier and a default fallback strategy for cases when hardware or permission might be unavailable.
- Deployed and released the Android SDK to a private Maven repository so that only authorized developers could access the SDK.
- Deployed and released the iOS SDK to a private CocoaPods repository so that only authorized developers could access the SDK. The library is distributed as a binary.
- Built a reusable ad component that could be embedded in-app content and reveal itself upon scrolling as per the set criteria.
Lead Engineer
Credntia
- Led the planning, architecture, development, scaling, and deployment of the Android and iOS apps.
- Chose a new architecture (VIPER) for the iOS app for better performance and suggested new DBMS and security enhancement for proper encryption and data protection.
- Designed and implemented a new clean architecture for the Android app for better performance, stability, and scale. Used Dagger 2 for dependency injection, RxJava, and reactive extensions for reactive programming support.
- Worked on achieving HIPAA compliance for the Android and iOS apps. All sensitive data were protected with 256-bit AES encryption, stored locally, and covered with two layers of authentication-based security.
- Collaborated with the team to design data structure and infrastructure for the Parse and Firebase (later) back end.
- Worked with the team to design a secured REST API for third parties.
- Developed a new barcode scanner library for Android based on Google's Mobile Vision API, especially for reading PDF417 barcodes more accurately and faster than ZXing.
- Created an OpenCV-based mobile vision library that can detect ID documents (e.g., passport and driver's license) in real-time using the device camera.
Lead Engineer
PartyLife
- Did requirement analysis with the founders and made a detailed technical specification.
- Designed the system architecture and defined the infrastructure components based on the requirements and business goals.
- Wrote a detailed specification for the required back-end service and led the web team to build a robust REST API.
- Developed the native Android and iOS apps with social features like profiles, messaging, search, etc.
- Designed the continuous development, internal testing, and deployment pipeline for continuous improvement of the platform.
Independent Android/iOS Developer
Freelance
- Developed an Uber-like taxi booking system with separate apps for drivers and passengers. Riders could filter locally available cars based on their types and features, communicate with drivers in real-time, and pay with a card for the ride.
- Developed an Android app used to facilitate and track the delivery of packages. Delivery reports were digitally signed, and a web dashboard provided tracking, verification, and review capabilities.
- Developed an Android app for finding childcare services. Users could perform location-based searches, read client reviews, and contact childcare centers. Further, the app provided driving directions and real-time navigation to childcare centers.
- Implemented several image warping algorithms on Android, including bulge effect, explosion, implosion, etc.
- Developed an Android app for budget tracking and automatic budget population, using user data (e.g., location, profession, income, budget, and expense history) and statistical models to generate an optimal budget for maximizing savings.
- Developed an Android app for a security company facilitating reporting and supervision of guard patrol activities, routes, arrests, or incidents. GPS and cameras were utilized to capture important location and incident data.
- Utilized Git and Jira for source control and issue tracking. Developed using MVC with Agile methodologies.
- Developed an Android app that allowed users to take or upload photos and apply basic filters before sharing them on Facebook and Twitter. Further, users could schedule their posts to upload at a particular time.
Lead Android/iOS Developer
Cabeze
- Developed Android and iOS apps for an Uber-like service. Developed both driver and passenger apps.
- Developed innovative UI libraries (sliding drawers, floating views, etc.) to build a modern yet smooth user experience.
- Utilized Google Maps API and device's GPS for optimized turn by turn driving navigation and ETA calculation.
- Developed, tested, and optimized data refresh strategy for maps to provide an almost real-time experience.
- Developed, tested, and optimized a push- and pull-based communication strategy between driver and passenger apps to ensure a smooth overall experience.
- Integrated payment gateways, e.g., PayPal and credit/debit cards.
Android Developer
Handup
- Developed a collaborative voting app for secure voting.
- Developed a text input control based on Edittext that could identify, categorize, and validate entered text using regular expressions and showed added items as chips (https://material-ui.com/demos/chips/).
- Developed a UI widget that allowed the user to drag and drop the items, e.g., voting options, to reorder and merge in order rank the options.
- Wrote a horizontal bar chart widget and a pie chart widget to show voting statistics in an interactive way.
- Developed a statistical ranking algorithm and implemented that for ranked votes.
- Used geofencing for notifying users when they are in a designated voting location. Used GPS and other location APIs to filter ongoing location-based votings.
Experience
Credntia
iVerified
PartyLife
Cabeze Taxi
Handup
Secured Preference Store
https://github.com/iamMehedi/Secured-Preference-StoreCVScanner
https://github.com/Credntia/CVScannerStepBuilder Generator
https://plugins.jetbrains.com/plugin/8276-stepbuilder-generatorMVBarcodeReader
https://github.com/Credntia/MVBarcodeReaderBarnc
Astraea - Law Farm Management System
Automated Budget Planner
Childcare Finder
Social Automator
Education
Bachelor of Science Degree in Computer Science and Engineering
Bangladesh University of Engineering and Technology - Dhaka, Bangladesh
Higher Secondary Certificate Degree in Science
Notredame College - Dhaka, Bangladesh
Certifications
IELTS
British Council
Skills
Libraries/APIs
RxJava, RxSwift, Fabric, Google Maps API, Reactive Extensions, Google Gson, REST APIs, CocoaPods, Google Maps, Facebook API, X (formerly Twitter) API, PayPal API, Jackson, Camera API, Retrofit 2, Firebase Android SDK, LiveData, Material 2, Facebook SDK, MPAndroidChart, LeakCanary, RxJava 2, Retrofit, Protobuf, OpenCV, OpenSSL, Camera2 API, Stripe, OpenGL ES, JavaMail, Fitbit API
Tools
Bitbucket, GitHub, Git, Xcode, Android Studio, Gradle, IntelliJ IDEA, Jira, Eclipse IDE, Android Jetpack, Figma, CircleCI, ExoPlayer, Slack, Firebase Authentication, TestFlight, Microsoft Visual Studio, Notion, Apache Maven, Miro
Languages
Kotlin, SQL, Swift, Java, JavaScript, GraphQL, C, C#, Objective-C, Python, C++, Dart, XML, CSS, HTML, TypeScript
Frameworks
Dagger, Dagger 2, ReactiveCocoa, Android SDK, iOS SDK, MapKit, UIKit, Core Data, Cocoa Touch, JSON Web Tokens (JWT), Spring Boot, .NET, Viper, Flutter, Core ML, Espresso, Mockito, React Native
Paradigms
Reactive Programming, REST, Model View Controller (MVC), Object-oriented Programming (OOP), Agile Software Development, Design Patterns, Agile, Clean Code, Model View ViewModel (MVVM), HIPAA Compliance, Functional Reactive Programming, Socket Programming, Unit Testing, Microservices, Waterfall Development, Management
Platforms
Firebase, Mixpanel, iOS, Android, Windows, Ubuntu, MacOS, Oracle, AppsFlyer, Bluetooth Low Energy (LE), Amazon Web Services (AWS), Linux, Java EE, Zendesk, Mobile
Storage
Realm, Cache, SQLite, Database Modeling, Oracle PL/SQL, MySQL, Databases, Cloud Firestore, Microsoft SQL Server
Other
Encryption, Geolocation, GPS, Location Services, Reactive Streams, Social Media Integration, User Experience (UX), SOLID Principles, Algorithms, Cryptography, Mobile Security, Data Structures, Software Architecture, XMPP, RESTful Web Services, Multithreading, Security, OAuth, Programming, Operating Systems, Software Engineering, English, Maps, Payment APIs, Mobile Navigation, Data Encryption, Mobile GPS, Mobile Payments, Coroutines, Apptimize, Subscriptions, Jetpack Compose, Performance, Google Play Store, Release Management, Code Review, APIs, User Interface (UI), Android Animations, Secure Storage, CI/CD Pipelines, App Store, Architecture, Mobile Applications, API Integration, System Architecture, Technical Leadership, Mobile App Development, Social Media Apps, Regular Expressions, Image Processing, Lottie, Computer Vision, Artificial Intelligence (AI), Ejabberd, VoIP, Machine Learning, Networking, Bluetooth, Prismic, Amplitude, Google Fit, Charts, Scripting, Benchmarking, Memory Profiling, Product Requirements Documentation (PRD), Mentorship, Back-end, Near-field Communication (NFC), Video Streaming, Audio Streaming, Integration Testing, OkHttp, CTO, Leadership, WebSockets, Instant Messaging, ZOOZ API, Tesseract, Deep Learning, Network Programming, AI Programming, Graphics, Discrete Mathematics, Computational Geometry, Mathematics, Physics, Chemistry, Biology, Monday.com, Decentralized Applications, Hybrid Apps, Progressive Web Applications (PWAs)
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring