Monthly Archives: May 2015

Mobile Debugging Made Easy

Mobile Debugging Become Easy Mobile devices are now the computing platform of choice for many business, user and consumers. In Naukri most of the applications are on mobile, frequent updates are required on them. During debugging we were facing many problems which were also very time consuming. Debugging Javascript on a mobile device can be maddening. I usually had no idea what went wrong, and I often got frustrated with a blank white screen and no clues. I could learn to use the debug tools available on each platform, but that would become onerous quickly. I was aware of... Read More

Integrate your Automation with Jenkins

  Automation testing has become a part and parcel of our testing @Naukri. With that, we have a complete test suite covering most test cases of the iOS App. However, the challenge was executing them periodically. One of the major ideas behind having automation suites in place is the fact that it relieves you of the manual intervention. Now! If we had to manually put it to execution, what a snag! There we had!! Jenkins, an open source CI tool which could execute Apache Ant and Apache Maven based projects as well as arbitrary shell scripts and Windows batch commands as... Read More

Short Primer on our experience on developing Mobile Websites

Sale of Smart phones and tablets have seen a phenomenal growth over past few years. More and more people are now using mobile phones for shopping, entertainment, finance, health and even job search. Almost every company now has a mobile presence i.e. they either have a mobile app or mobile websites or both. For the uninitiated, mobile website is simply a normal HTML or HTML5 website optimized for display on mobile. It has a responsive design with very limited features as compared to full fledge desktop website. They run in the mobile web browser. They do not have access to... Read More

Selenium Page Object Code Generator

How Selenium Page Object Code Generator helped us bring down the coding time from 4.5 hours to less than 5 minutes for a single page object!! How it started: Back in 2012 we used to have separate teams for manual and automation testing. Automation team comprised of 2-3 people, who were working on customized hybrid framework in Selenium whereas the manual testing team was of approx. 25-30 people. This dedicated automation team used to cater to the automation needs for all Info Edge sites like Naukri.com, NaukriGulf.com, 99acres.com, Jeevansathi.com & Shiksha.com. The automation work... Read More

Redis with a distribution twist

We’ve all heard that, Redis is the next big thing when talking about noSQL data storage systems. We had 2 scenarios where we needed a caching mechanism, efficient in terms of, both memory and time. We tried out Redis with a distribution twist to solve both of our problems. Lets begin with the problem statements. Problem 1 :- We were caching the job-details and the job-description page-footer details for our jobs on the server memory directly as a local cache. This was being done for each server separately i.e if, I open the job-details page which is being served by server 1, it will be... Read More

Why Not Memcached ?

Memcached or Redis ? It's a question that nearly always arises in any discussion about squeezing more performance out of a modern, database-driven Web application . We too faced this question, while deciding the cache system for our application, but Redis proved to be the more powerful and flexible one. Both are in memory, key value data stores and are remarkably fast cache management systems. But Redis does whatever memcached can do and more. Let us look at some of these features :-   1. First and foremost is the extra data types, memcached key value pairs can only be in a string... Read More

Exploring mod_geoip

Problem Statement We have been inherently using IP Lookups for various purposes : Redirecting a user based on country. Advertisements and banners specific to the country/city of access. Default landing page based on user location. Country specific contact details. Fetching country from IP seems a trivial task. However, to fetch a country name against a given IP we usually query the database (either spatial or range queries), which results in a large number of sql queries everyday, thus increasing the database load. Solution mod_geoip is an Apache extension,... Read More

Automated ‘Hosts’ entries used in testing process

What is Hosts File: The hosts file is a computer file used by an operating system to map hostnames to IP addresses. The hosts file is a plain text file, and is conventionally named hosts. Hosts file is like an address book. When you type an address like www.yahoo.com into your browser, the Hosts file is consulted to see if you have the IP address, or "telephone number," for that site. If you do, then your computer will "call it" and the site will open. If not, your computer will ask your ISP's (internet service provider) computer for the phone number before it can "call" that... Read More

Version Control : Code Development : Migration : Learnings

Versioning of Code is an extremely important process in Code Development. Hence, a version control system which complements development and supports versioning, code merging and collaboration in an effective manner facilitate seamless code sharing and speeds up the entire process without the worry of even a single bit of code getting lost. There are various versioning system(s) in the market. However, I would be sharing my experiences and learning while migrating from subversion to Git and how the one inspite of serving us for years and its wide spread adoption had some shortcoming(s) and... Read More