Whizpool is looking for an experienced (1-2 years) and dynamic iOS Developer to join our team. We value our work and take pride in showing it to the world. We offer a great opportunity to expand your career, learn new things, and take on interesting technical challenges.Position is Islamabad based and we will prefer hiring for this region.

Responsibilities:

  • Design and build advanced applications for the iOS platform.
  • Work on bug fixing and improving application performance.
  • Continuously discover, evaluate, and implement new technologies to maximize development efficiency.
  • Ensure the performance, quality, and responsiveness of applications.

Skills:

  • Strong programming skills in both Swift and Objective C.
  • Strong experience with XCode, Cocoa Touch, iPhone/iPad Apple SDK.
  • Hands on knowledge and Proficiency in Xcode, Interface Builder and Instruments.
  • Experience working with remote data via REST and JSON.
  • Experience with iOS frameworks such as Core Data, Core Animation, etc.
  • Familiarity with RESTful APIs to connect iOS applications to back-end services.
  • Familiarity with cloud message APIs and push notifications.
  • Solid understanding of the full mobile development Lifecycle.
  • SDK integration for Facebook, Gmail, Twitter, Google Maps.
  • Experience in integrating mobile applications to Web Services.
  • Excellent ability to develop and understand algorithms.
  • Exceptional analytical aptitude and attention to details.
  • Excellent communication, writing and documentation skills

Do you want us to build an App for you ?

Mobile Application Testing

A simple definition of mobile application testing is “Mobile application testing is a process by which an application software developed for handheld mobile devices is tested for its functionality, usability, and consistency. Mobile application testing can be automated or manual type of testing.”

Main Challenges of Mobile Application Testing

Testing of mobile applications is more challenging than testing desktop and web applications because of growing number of mobile devices is leading to a massive fragmentation of OS, screen sizes, variations of standard OS and more.

1. Screen Size:

Screen sizes of mobile devices changes whenever any new model is launched. Apple’s screen sizes range from 3.5’’ to 12’’. Android screen sizes range from 2.6’’ to 6’’.

2. OS Fragmentation:

Different mobiles have different operating systems which are upgraded often. Fragmentation is a big issue for Android which has 11 different OS. 93% of iOS devices are using version 9 or 10, so Apple’s OS fragmentation is a smaller issue than Android.

Following is the bird eye view of Android screens till 2015:

3. Battery:

Success of mobile apps can be dependent on consumption of battery as well.  Many people open multiple apps at a time. User tends to uninstall the app if it drains battery life faster.

4. Mobile Networks:

The performance of a carrier’s network can have a huge impact on the user’s experience with an app. This is another factor beyond the hardware and software that must be taken into consideration as app must work offline for features which does not require internet network.

5. Usability:

Usability is the foundation of mobile apps’ success. It is a big challenge to make sure app has an attractive and intuitive interface, easy to access content and smooth navigation.

Solutions

To make sure that an app is good enough to launch and majority of the users will be happy, it is important to test it on enough devices of different size, shape, software, software version as well as hardware.

  1. As it is the biggest challenge to test the app on all available screen sizes, shapes and software versions available in market, it is very important to know your audience. Try to test the app on all available devices, latest OS versions and devices most popular in your audience.
  2. As we still cannot have all the devices in real, so there are multiple simulators and emulators available in the market which can be used for testing. These simulators give a feel of the screen size and the look and feel however we cannot completely rely on them as the scenarios are not real time. There are simulators for different operating systems and platforms also.
  3. Performance testing should be done extensively. It is important to test how your app performs when it is not connected to internet? How much do the various speeds of networks impact the performance of your app? What happens when you turn off the internet during some process?
  4. If targeted audience of your app is all around the globe, it is most important to make sure that the strings are translated for each language and translations are accurate as nowadays users have multiple options and they can easily switch to another app.
  5. Simplicity of UI plays an import role to make a mobile application successful. Most of the users prefer to have an application which fulfills their requirements along with providing the ease to use the app. Therefore, it is very important to make sure that the app is providing simple UI, smooth navigation and easiest flow to get the desired outcome.

Key points for Testing

 As a Tester, you are always up-to-date with the progress off the application. It is important and easy for you to identify the challenge at the very beginning.

Here are key points that can help you as a tester, to make sure your mobile application is perfect to be released to the market:

  • Make sure all you have enough time to test the app
  • All major features and highest priority tasks should be tested first to avoid any new issue at last moments
  • App should be tested on all OS, platforms and devices which are mostly used by the expected audience of the app
  • App should work fine after update and user’s data should not get deleted
  • Test the app under various network conditions
  • Run security test for the authorized use of the app
  • Check for proper error messages for all conditions
  • Check the app performance when device is charging or under low battery conditions
  • Conduct mobile app testing with Usability Testing for ensuring user’s comfort
  • App should provide easy navigation on various screens

Conclusion:

As part of a mobile app’s success, we cannot overlook the importance of a smooth mobile application testing. By planning your selection of target devices through a mix of emulators and physical devices, combined with other mobile testing strategies, you move towards a successful release!

Do you want us to build an App for you ?