Monthly Archives: January 2016

Benchmarking of iOS Applications with AppTracer Framework

In Naukri, we always keep striving that our products keep high value in the terms of quality. High quality is the only key to make the business sustain. For ensuring the high quality of the product, we follow many benchmarking procedure. One of them is the AppTracer Framework. Following are some of the metrics that plays an important role to achieve the high quality: Application load time. API response time on different type of network like 2G, 3G, etc. Views render time after getting the response from API. Exception & crashes AppTracer framework provides a benchmarking... Read More

Supporting multiple environments in Android

It is quite common for any application to be built and tested in multiple environments like development, test, staging, production etc... And it is typical to have a different set of URLs for each environment. The same holds true for Android applications also. Ever since we started building Android apps (in Eclipse), managing environments was a tedious but necessary task. In web applications we could easily use symbolic links to separate our environment configurations but it had to be something else in Android apps. A very simple approach is to define an environment variable and change it as... Read More

Agile : Iteration Planning

Epic, Feature, Story. “A goal without a plan is just a wish” — Antoine de Saint-Exupery Agile, It’s all about flexibility in the course of software development phase. But flexibility is not possible without a proper plan in place. Even when we decide the architecture of a software, we often keep in mind that the software stays flexible to any changes in future and therefore design patterns come into picture. There comes Iteration,  a step by step approach. Grab yourself a cup of coffee as we are going to dig deeper into it. Planning plays a vital role in the software development life cycle. It... Read More

Database Backups Using MySQL-ZRM

Data is one of the biggest assets for any organization, so maintaining multiple copies of updated data and to make it available in case of any hardware/software failure is a key thing to keep the business running. Thus, an efficient data backup solution is a must. Taking backups of huge data is always a challenge because having a hot backup of TBs of data is impossible and backing up the complete filesystem doesn’t guarantee data consistency. While exploring different open source backup solutions, we came across MySQL-ZRM (MySQL Zmanda Recovery Manager) which matched our requirements to an... Read More

How we reduced Naukri iOS App size by 50% using App Thinning

With iOS 9, Apple has introduced the “App Thinning” feature which will save the device memory and downloading time for user. In previous version, developer were supposed to make universal build which includes all the assets of the devices. So, when application installed on the devices, it has all the resources regardless of the device specifications. With App Thinning, only required assets will be downloaded, that are required to run the application on the particular iOS device. In countries like India, where majorly people doesn't have high speed internet, have limited... Read More

Docker @

Problem statement Let us go though the problems that we were facing in our development environment.   1. Deploying multiple applications on a single machine.            Different applications have different dependencies and package requirements. Deploying multiple applications on one server causes dependency conflicts. For eg. if different applications are supported by different PHP versions. To achieve this one has to install multiple PHP versions on single machine.    2. Resource allocation We cannot control resource utilization (CPU and memory) by different applications... Read More