Senior Android Developer
2021 - PRESENTSelf-employed- Uplifted the new joiner experience for a mobile banking app, resulting in users 100% onboarding via the app without the need to visit a branch.
- Led a mobile team to bootstrap a custom payment app for an independent Verifone terminal, overseeing the entire project from conception to first market release.
- Collaborated with back-end and security teams to fortify the payment app running on an independent payment terminal to achieve the required UX without compromising data security and PCI standards.
Technologies: Android, Agile Software Development, REST, JSON, Room, Flow, Coroutines, Android Architecture Components, Kotlin, Android SDK, Android DevelopmentSenior Software Engineer
2015 - 2021Arq Group- Explored the possible solutions to tackle the client's business aspirations and described the structure and behavior of the proposed software solution to project stakeholders.
- Wrote and reviewed code that closely maintains banking regulations and security practices.
- Participated in refactoring legacy code to fit into MVVM architecture and allow for better unit test coverage.
- Worked with the client's back-end team to fine-tune their structure to serve mobile apps better.
- Hosted knowledge-sharing sessions and encouraged team members to engage in presentations and activities.
- Mentored developers and provided technical guidance for solving difficult and illusive bugs.
Technologies: Firebase, REST, Git, Kotlin, Java, Android, Agile Software Development, Android Architecture Components, Model View Viewmodel (MVVM), Model View Presenter (MVP), Android Development, Android SDKFreelance Android Developer
2015 - 2016Kasra.co (via Toptal)- Designed and implemented the app from the ground up, making sure to make ends meet between the existing back end and the desired UI.
- Worked closely with the UX team to meet design specifications and ensure comparability with a wide range of Android device sizes.
- Added background loading and caching to enable users to consume content offline.
- Implemented syncing for user settings (favorites, bookmarks, etc.) between different user devices.
- Integrated the app with several social media services, e.g., branch.io for deep linking and Facebook/Twitter for logging in and content sharing.
Technologies: Deep Linking, REST, Android, Android Development, Android SDKFreelance Android Developer
2015 - 2015Fatsack Outdoors (via Toptal)- Ported an iOS app to Android.
- Created Android UI from provided Photoshop templates.
- Employed a mix of local and in-the-cloud strategy for data storage and caching.
Technologies: JSON, Parse SDK, Android, Android Development, Android SDKFreelance Android Developer
2014 - 2015Rolltech, Inc. (via Toptal)- Developed the Android version of a Rolltech bowling score tracking app.
- Converted iOS app screens to Android ones.
- Implemented the app to consume a real-time API and maintained a responsive user-friendly UI.
Technologies: JSON, Retrofit, Android, Android Development, Android SDKFreelance Developer
2014 - 2014Terminal.com (via Toptal)- Created reusable Linux-based snapshots. Each snapshot contained popular open source software installed, configured, and ready to use.
Technologies: LinuxDevelopment Lead
2014 - 2014Inmobly- Led a team of six developers, making design decisions and enforcing code quality practices.
- Used adaptive algorithms in the software to predict user future content consumption based on previous behavior.
- Achieved goals of lowering network congestion and decreasing internet bills.
Technologies: Python, Android, Android Development, Android SDKSystem Designer
2012 - 2013CGI- Redesigned SQL queries, significantly cutting execution time from five hours to 15 minutes.
- Redesigned C-based administration software for power plants into a server/client architecture.
- Ensured full backward compatibility for the new design.
Technologies: SQL, C#, JavaScriptSenior Developer
2011 - 2011CIT MobiDiv- Wrote a lossless algorithm to compress images in as few SMS packets as possible.
- Integrated the application with the messaging system on various mobile platforms.
- Used Facebook/Twitter API to publish images from the application.
Technologies: J2ME, Android, Windows Mobile, Android Development, Android SDKDeveloper
2007 - 2011Harf IT- Designed and implemented algorithms for indexing both plain text and XML, with the ability to execute XPath queries on indexed data.
- Kept search and retrieval performance under 300ms for 16GB of data on a single mainstream PC, with index storage overhead of 15%.
- Wrote COM wrappers to provide search functionality to other platforms.
- Wrote a plugin to provide advanced Arabic support for SQL Server full text search.
Technologies: Win32 API, C++