Hamoud Ahmed
Senior Android Developer
Mobile: 571-***-**** Email: **************@*****.***
SKILLS
Android Developer, Project Management, Team Management, Kotlin/Java, Communicator, Negotiator, Problem-Solver, Analytical, Logical Thinker.
PROFILE SUMMARY
•9+ years of experience as an Android Mobile Apps Developer
•5 apps published in the Google Play Store.
•Communication effectiveness with team and stakeholders. Efficient and accurate requirement gathering.
•Knowledge of Architectural design patterns: MVVM (Model View ViewModel), MVP (Model View Presenter), Clean Code, MVI, Architectural Components, MVC.
•Knowledge and experience using payment gateways/systems.
•Apply OOP design patterns such as Façade, Abstract Factory, Builder, Singleton, Observer, Protocols, Delegation, etc.
•Proficient in using best UI/UX best practices implementing fragments, navigation components, Jetpack Compose, ConstraintLayout, animations, Material Design, Compound Views, and Custom Views.
•Skilled programming in Kotlin and Java.
•Experience in the use several version control tools (Subversion SVN, Source Safe VSS, Git, GitHub).
•Optimized performance, battery and CPU usage and prevented memory leaks using LeakCanary and IcePick.
•Proficient in Agile and Waterfall methodologies, working with multiple-sized teams from 3 to 10 members.
•Worked with various integrated development environments (IDE)/frameworks, including Android Studio, Eclipse.
•Testing experience using Robotium test framework, Espresso test framework, Mockito, SpongyCastle cipher suites, Jenkins, JUnit unit testing, and Visual Studio App Center.
•Keep abreast of industry trends and technologies, being prepared to apply them quickly.
•Experienced in integrating Android mobile apps with web services using Retrofit, Volley, Kotlin Coroutines, OkHTTP, JSON, GSON, GraphQL, WorkManager, Handlers, Threads, and Loopers .
•Implemented Dependency Injection frameworks to optimize the unit testing and mocking processes (Dagger, Hilt, Koin).
•Experienced with third-party libraries like Retrofit, Room DB, LiveData, RxJava, Glide, Picasso, ExoPlayer, RxAndroid, EventBus, HttpLoggingInterceptor, Dagger2, Hilt, Firebase, ViewModel
•Experience with embedded local storage solutions such as SQLite, RoomDB, Data Store, Encrypted SharedPreferences, Internal storage, external storage and cloud storage with Firebase.
TECHNICAL SKILLS
•Authoring IDE – Android Studio, Eclipse
•Content Integration – REST, SOAP, JSON, XML, GSON, Jackson, Moshi, GraphQL, Content Providers, Android Media Player API, ExoPlayer for Streaming Audio/Video
•Team Tools – JIRA, Jenkins, Git, SVN,
•Old Android – Intents, Loopers, Loaders, NineOldAndroids, ListView, AsyncTask, Volley
•Languages – JAVA, Kotlin, XML
•Databases – RoomDB, SQLite, SQL, Oracle, Firebase
•Basics – Material Design, MVC, MVP, MVVM, Dependency Injection, Permissions, Classes
•Debugging – Leak Canary, Profiler
•Versioning – Git, GitHub, BitBucket
•Google – Google Analytics, Google Maps, Google API, Google Cloud Messaging
WORK EXPERIENCE
Capital One, McLean VA
Sr. Android Software Developer, 08/ 2022 to Current
https://play.google.com/store/apps/details?id=com.konylabs.capitalone&hl=en_US&gl=US&pli=1
Project Summary: Worked on Dynamic Tile Engine, in which is a library they created so it is easier to move around while using capital one guidelines. I oversaw support team to reduce workload by completing UI detailed information, deep linking.
•Created a new UI style that is used by the application.
•Created a feature called subexpereienceid to where links tiles to that subexpereienceid.
•Used reactive frameworks such as RxJava, RxAndroid, RxBluetooth, and RxKotlin.
•Worked in Android Studio with coding in Kotlin using an MVVM Android app architecture.
•Used Kotlin for all source classes.
•Worked closely with backend developers to debug and create proper documentation in multiple endpoints.
•Used Retrofit, OkHttpClient frameworks to streamline the process of building HTTP services to the application.
•Used Hilt for dependency injection to accommodate dependency inversion.
•Used Kotlin coroutines for asynchronous calls and handle threading.
•Refactored the Retrofit network API to implement a Singleton approach and utilized Lifecycle aware Observables to consolidate backend consumption.
•Worked on and repaired our suite of UI tests allowing them to be a reliable part of not only the development process but the testing process as well.
•Fixed several bugs in the application, ranging from bugs that could cause serious legal issues, to bugs that were relatively benign.
•Agile development methodology
•Supported screen resolutions to provide proper resizing across Android devices using ConstraintLayouts.
•Maintained high-quality code using code coverage and code correctness using various tools including Lint and SonarQube.
•Provided technical advice to the business and design teams on new applications.
•Utilized Android Hilt dependency injection library to reduce tight coupling and increase project scalability.
•Worked with Git and GitHub to manage projects.
•Worked with Jenkins for Continuous Integration (CI).
•Implemented Fetching API to retrieve user data (GET, POST, PUT).
•Built UI layout using standard Android dev tools and adhering to best-practice principles for Android.
•Configured Mix Panel API to send instant notifications when a new policy is introduced in the market and push notifications for any renewal.
•Configured the app to allow users to save insurance searches to their accounts.
•Worked on maintaining the Core SDK for the account settings, that allows developers to bring a seamless UI and functionality along the application.
•Migrated from Async Tasks and Intent Services to a reactive paradigm with RxJava concurrency modeling and included the Android-Job utility library to run background jobs.
•Added documentation to the capital developer website, to help readers better understand the Dynamic Tile Engine.
•Updated XLM and files to match FIGMA designs so developers can use up to date environment.
•Helped with removing deprecated features along with contacting feature teams to update them of it being deprecated.
•Created a stackable tile in which it was in XML.
Metlife, Cary NC
Android Lead Developer 05 2020 to 07 2022
https://play.google.com/store/apps/details?id=com.metlifeapps.metlifeus
•Implemented Android mobile app in Kotlin with Android Studio utilizing 3rd party frameworks and libraries.
•Programmed Kotlin expressions and higher order functions to reduce boilerplate code.
•Developed new features in Kotlin to reduce codebase with data classes and extension functions.
•Use of Git and GitLab for source control and Jenkins for CI/CD.
•Developed the Android app using MVVM architecture pattern utilizing Singleton, Façade, and Decorator design patterns.
•Implementation of Android Architecture Components including LiveData, ViewModel, Lifecycle-Awareness, and RoomDB Storage
•Integrated communication with backend services / API’s (REST and GraphQL) using
•Retrofit, ApolloClient, and RxJava, parsing JSON objects with GSON.
•Part of Agile Scrum project management team.
•Maintained Android app quality in development through continuous integration process using GitLab and Jenkins.
•Used JIRA for documentation, task tracking, backlog management, and meeting preparation.
•Applied Dagger 2 as the library for dependency injection for readability and clean code.
•Implemented Broadcast Receiver logic to listen for events to trigger local database updates.
•Used reactive frameworks such as RxJava, RxAndroid, RxBluetooth, and RxKotlin.
•Worked with Android notifications to alert users of important updates.
•Collaborated with the web application development team to ensure consistent feature implementation between Android mobile application and web application.
•Contributed to cross-functional engineering teams (back-end development, front-end development, UI/UX designers, QA, Product Management).
•Lead two teams consisting of seventeen offshore developers.
•Conducted frequent code review activities with the members of the development team.
•Performed branch merging using Android Studio IDE and GitLab
•Worked with Platform Team to have feature branches approved and merged into monthly release branches.
•Lead requirement gathering sessions writing high-level design for the Android application, and creating associated user stories.
•Active part of software development lifecycle (SDLC) from product definition through design, development, testing, and maintenance.
•Coordinated with testing team during the testing phase to correct issues of Android app performance and user experience.
•Lead daily agile stand-ups and documented daily development activities
•Worked with remote team members with work schedules within different time zones.
•Experience working with on-site and off-site teams and management.
•Creation of technical documentation to assist in communication with team members.
•Implemented features for A11Y compliance.
•Used Room Persistence Library to implement SQLite database.
•Facilitated communication and understanding between offshore engineers and onshore product management and design teams.
•Implementation of features in multiple languages (English / Spanish)
•Implemented new features and enhancements to pre-existing features using company standards and best practices.
•Wrote instrumentation tests and UI tests using Espresso.
Hertz, Chicago IL
Senior Android Developer 04 2018 to 04 2020
https://play.google.com/store/apps/details?id=com.hertz.android.digital
•Set up accessibility handling for talkback.
•Used Jetpack components like ViewModel, LiveData, Room and WorkManager
•Implemented MVVM architecture pattern to maintain separation of concern
•Handling of push notifications in the app using Firebase cloud messaging.
•Led meetings to demonstrate contributions to the app.
•Mentored fellow developers as a lead
•Fixed bugs using Firebase Crashlytics reports
•Migrated to Kotlin from Java and used Jetpack Compose when required
•Led effort to update the apps gradle and sdk
•Migrated out of date imports to latest versions.
•Added deeplink functionality to the app.
•Implemented changes to app’s credit card validation.
•Worked with offshore developers to develop feature branch.
•Developed automated push notification delivery using Salesforce Marketing Cloud
•Led discovery efforts in new technologies for app integrations.
•Tracked conversion rates on app effectiveness.
•Android team effort for Value-added services project.
•Implement new Value-added service pop-up for project.
•Participated in daily stand-ups, and retrospective meetings.
•Developed a Push campaign for Value-added service project.
•Learned and Used Salesforce Marketing Cloud for Push campaign.
•Refined that app by fixing bugs found though Dynatrace and Firebase tracking.
•Implement Google Analytics to track Click-tough rate on value-added service pop-up.
•Implement new encryption method and removed old Facebook Conceal library.
•Implement Android KeyStore to store used passwords safely.
•Maintained Hertz app by use of the Java to Kotlin Programming language.
•Used Jenkins to create test build for the Value-added services project.
•Maintain communication with employees by using Microsoft Teams
•Participated and maintained pair programming practices.
•Helped maintain over 80% coverage for Units Test
•Wrote Units test using Junit, Mockito, and Power Mock
•Overhauled emails templates on Salesforce Marketing Cloud using HTML, JavaScript, and Salesforce own custom script AmpScript.
•Investigated and help solve key crashes in the Android Application
•Implement Accessibility feature using the Talkback Feature
•Gave presentations during Weekly Playback for the Value-Added Services project.
Pepsi, Harrison NY
Android Developer 05/ 2016 to 03 2018
•Experience developing efficient Java code and view layouts with the ability to diagnose performance bottlenecks.
•Development using Java, Eclipse, and Android Development Tools.
•Worked with Android notifications to send reminders to the User Interface.
•Implemented user login screens and designed context menus based on Android Menu Navigation, Tabbed Navigation control, and Action Bar Control.
•Worked with database management system using native Android API and server-side MS SQL server database.
•Responsible for developing the Android UI layouts (Linear Layout, Relative Layout).
•Implemented Singleton Object class for managing 3rd party API to access information in various modules of the Android application.
•Implemented two versions of unique UI. Created prototypes for different UI elements.
•Introduced optimal caching mechanism into SQLite, to avoid unnecessary queries.
•Involved in writing application logic in Android Studio.
•Integrated communication with backend services using Retrofit and RxJava, parsing JSON objects with GSON.
•Worked with Custom Frameworks and Custom Templates.
•Implemented Frame Layout method to show background images.
•Individual implementation of Google Map and Location services.
•Worked on the SQLite database to minimize size of the Android application and increase performance.
•Used Android XML in design and development of user interfaces.
•Added Broadcast Receiver logic to listen for events to trigger local database updates.
Uber, San Francisco CA
Android Developer 05/ 2014 to 04 2016
•Incorporated payment modes using Stripe, PayPal, card.io library to pay for rides and securely store credit card information to pay for future orders.
•Refactored the project using MVP and applied code reusability using dependency injection libraries (Dagger2, Butterknife).
•Adhered to Material Design structure and principals.
•Used Rx-java, applied multithreaded programming, asynchronous programming, and design patterns.
•Managed refactoring to fix bugs, apply clean code architecture, added features and functionalities, and improved User interface without affecting business requirements.
•Worked independently on Track your delivery, use cases.
•Added Flurry for user behavior tracking and quality control over crashes.
•Integrated Facebook and Twitter API for incorporating Like, Login and Sharing features.
•Managed the build creation with a Jenkins instance hosted on a private server.
•Managed the JIRA backlog and assisted with debugging and profiling Android apps.
•Included GPS features, by implementing Google Maps, and Google Places APIs.
•Added LocationManager (GPS) to find users and customize Android UX experience.
•Used Picasso libs for memory efficient imaging and disk caching.
•Coded cryptographic API interfaces to implement algorithms for encryption, decryption, and/or key agreements.
•Developed a library that abstracted core business rules and defined the business objects to provide the interface for GUI. This layer implemented core banking RESTful services, Handlers/Executors/Threads for multithreading.
•Resolved dependencies using Dagger2 without affecting other modules.
•Wrote unit tests using JUnit, Mockito and developed automated test using Jenkins.
•Used Jenkins as the continuous integration environment to track code issues and manage tasks.
•Designed custom, compound views, and custom animation effects to fit User Interface (UI) requirements.
•Developed enhancements and improvements to the current application.
•
EDUCATION
Bachelor of Computer Science, Lewis University
•