(Senior Android Engineer - 8 Years Exp)
Code is incomplete without testing
Whenever I thought something is being done in wrong way or needs improvement, I took a step back and tried to solve it. I tried to tackle some problems by creating my own libraries for specific projects.
Validating input fields require a lot of effort and boilerplate code on developer side. I have tried to solved this problem by creating a library which does all this work in a very effective manner. It amazingly reduces your validation logic to only a single line and makes you productive when dealing with input validations. See this link for reference.
For networking, I have fully compiled my own library keeping Evamp’s need in mind. As almost every project in Evamp
communicates to network, this library reduces around 20% of developer’s burden and allows them to be more productive.
source code is not available:(
NPE is a nightmare for Java Developers and Evamp has suffered a lot from it. I have written an annotation processor to
prevent app from crashing because of NULL POINTER EXCEPTIONS
. According to Fabric, we had around 10% decrease in crashes after integrating this library.
See this link for reference.
One of the cumbersome tasks in Android is getting view reference in java code. You have to write boilerplate code again and again for getting the new IDs from XML. I solved this issue by creating an annotation processor which generated view binding code.See this link for reference.
All these libraries greatly help developers to focus on something more important (business logic) and save precious time.
Coconut Input Validator moves your data validation logic from Java code to XML. By this, you are able to define validation regex and error messages directly on view definition. link
Ease is a wrapper around Volley for handling network responses more effectively. It offers auto parsing of response to a specific type with clean and intuitive API for creating requests and handling responses.
Oxygeroid is a simple yet very effective annotation processor written specifically for Android. It’s a boilerplate killer and core idea behind this processor is to get rid of processing view Ids manually. link
YABK is an annotation process which generates getter/setters and parcel implementation of a POJO at compile time. link
My Telenor is the place where everything related to your Telenor Pakistan number is at your fingertips. A tap or two on My Telenor’s easy to use app and you can view, activate and deactivate your favourite offers, check your usage and manage your account. link
A selfcare app for a Jordan based telco company. link
A telco app for a telecommunication company based in Iraq. link
Lead the core project of Automation of Provincial Disaster Management Authority (PDMA) System.
B.Sc Computer System Engineering, UET Peshawar (2015)