Recent Posts

Hackathon 4.0

What describes the success of an event? The fact that people want it to happen again very soon. Yes, Hackathon 3.0 ended with much appreciation and excitement with people discovering what they are capable of developing overnight, the response was indeed tremendous and hence the Naukri Engineering team wanted to have Hackathon twice an year. So the fourth edition of Hackathon was held on 16th-17th January 2016, with fresh ideas and enthusiasm. Employees gathered at the Naukri HQ in Noida for 24-hours of hacking fun. There were more than 50 impressive projects, many of which were completed... Read More

DNS Resolution in PERL

DNS Resolver in Perl DNS, which stands for domain name system, controls your domain name's website and email settings. When visitors go to your domain name, its DNS settings control which company's server it reaches out to. Benefits of DNS: Domain Names are alphabetic, they're easier to remember. Capable of providing security. Companies that make use of DNS server are able to protect the company related data from being accessed by unwanted people. DNS servers are quite flexible to use. A single DNS server is capable of managing multiple Internet sub domains and domains. How DNS resolver... Read More

Basics of Restructuring and Refactoring

The code that seems clean and fresh today, will someday begin to smell... Thats when you rewrite it!!! WHAT IS IT? A passionate developer always tries to write clean and quality code. Contrary to that, we often find messy and unstructured code. The transformation from a clean code to a messy code is a natural process where the code 'ages' with time. With time the code gets modified by the same or a different programmer. These later additions to the code are primarily tweaks and fixes. These additions often do not fit with the existing code design and thus are placed with less emphasis... Read More

How we converted Latin1 encoding to UTF8 in Mysql DB

The problem statement of converting latin 1 encoding to UTF-8 encoding in mysql  database is something similar to upgrading your linguistic skills from english to any other language in the world. Sounds impractical!! Correct, you may find it difficult to learn all the languages in the world as it is practically impossible to learn the rules of so many languages. But machines can do it easily. You just need to feed it with character set of that language and rules i.e. in technical term collation. We at naukrigulf deal with middle east countries so our system needs to understand ARABIC... Read More

Speeding up writing Unit Tests

Unit Tests writing, contrary to popular coding humour, is an important aspect of the development process. The process of writing Unit Tests reveals setbacks in one's code. It helps us identify complicated logic, magical functions, magic inside functions and non testable pieces of code (ex: - an if condition which is impossible to execute). Most of the programmers find writing Unit Tests tedious and cumbersome. But at Naukri we transform it into a fun way of learning more about the code base we are working on. Creating a test file is initially a repetitive process. It involves... Read More

Automating Front-End Processes – The Jenkins way

Being an IT techie, we are highly concerned with the way our websites are being developed and the way they perform. We are constantly pushing our limits to build and deliver high performance products and hence take up the end-users’ experience to another level and we do this by following countless techniques and technologies. In order to achieve the above said, we have a long list of tasks and processes we need to do or follow and the pain point is that most of them are taken care of and done manually. Before diving deep into the ways of doing all the stuff, lets first have a look at... Read More

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