Category Archives: Software Development

Rest API

API an Interface to Application's Programming We are always overwhelmed by so many Candy Crush Request on Facebook. But how Candy Crush sends its invite to you through Facebook. How Candy Crush knows you are on Facebook. How can Facebook allow any app to access your data without your physical intervention? Here’s the answer: Suppose I have a Candy Crush app and I want to put my latest scores on Facebook. How do I do it? There are two ways: I should hire a person who takes my latest score and posts it on facebook on my behalf. This is a ridiculous and a cumbersome way. I... Read More

Email Deliverability And Factors Affecting It

At Naukri.com our goal is help our users find best jobs any time any where. Users can search jobs on our website as well as they receive job alerts as per their requirements. We send close to 25 crore emails on a monthly basis to our users. As a result, email deliverability is very important for the success of our business. Keeping that in mind let us see what email deliverability is and what are the factors that may affect the delivery of an email. Email Deliverability is a way to measure the success at which an email marketer gets a campaign into subscribers' inboxes. It involves... Read More

Implementing Thrift for services

We at Naukri use a number of services at the backend. By writing backend services, we brought moduarity to our system. There are a number of services serving different purposes. These services help us in managing and scaling various parts of the site independently. For example, when you search for a resume or view a resume on Naukri, that sends a request to the Naukri's frontend apps. But those apps don't know how to fetch the resume data, they talk to a separate resume service that does the job. So what are the advantages? All the resume data can be managed by resume service and every... Read More

How to contribute to naukri engineering open source projects

open-source  Open Source Culture is one of the best things that came up in the software industry so far. We are seamlessly growing much faster in the field just because high end software like apache, mysql, nginx, nodejs, linux, etc. are available to use and reprogram as per our needs for free. But the thing is, it works only when people like us contribute to the community. Most of the programmers want to contribute to open source but they think it as difficult and time consuming. They assume that to make an effective contribution they need a big project and unlimited free time. This is not true at... Read More

Apple Push Notification Service in Naukri

Having a job or career determines your self worth.  Yes, you heard it right! Knowing  you   can   do   something well and earn something for your skills is a great feeling. That’s  the   main motto of Naukri. To abridge the gap between job seekers and recruiters.   And  to   follow this, Apple Push Notification Service is one of the several services used in Naukri   ios   app.   It   is   a   service   provided   by   apple to send the push notifications to apple  devices.   Push notifications are a way to send the information to users and to bring them on board.  ... Read More

Tech Talks @ Naukri.com

We, at Naukri.com, believe in continuous learning along with the product development. While working on similar projects, an engineer, at some point of time feels his knowledge is limited, that there is not enough technology information in his life. The tech talks are small informal presentations that help us stay updated with existing and new engineering trends and implement new things in the right way. And as they are internal, the experience that comes from speakers aligns directly with projects.     Why we need Tech Talks 1. Stay Updated - We need to stay updated with emerging... Read More

array_merge behaving differently on 32-bit and 64-bit architecture

PHP has a large number of functions one of which commonly used is array_merge. It basically merges 'n' number of arrays. We have used it quite often in my code and found out that it does not preserve keys when moved from 32-bit architecture to 64-bit. Let's figure out why this happened ? Recently We moved our ubuntu servers from 32-bit to 64-bit. Then suddenly some of arrays started losing their indexes which were working on previous server. Then we figured out it was an issue with array_merge. Code was using big numbers as indexes in multiple arrays which needs to be merged. Here... Read More

Agile : Retrospective

Retrospective : (Dictionary meaning) the action of looking back on or reviewing past events or situations, especially those in one's own life.   Let us start with a very simple example. Say someone is trying to lose weight for last 6 months and nothing works out for her. Then her friend suggests that running 3 miles/day for a month will do the trick. So she started running as suggested. Now should she keep on running for months or observe the results for the activity for last one month?   If your answer lies in second half of the question Welcome to agile Retrospective.   In... Read More

Restful WebServices (Microservices) in Phalcon Framework

About Phalcon:   Phalcon is a full-stack framework. It promotes the MVC architecture and offers features like an ORM, a Request object library, a templating engine, caching, pagination. In short Phalcon: Is a PHP C-extension based framework. Is a C-Extensions are loaded together with PHP one time on the web server’s daemon start process Is a classes and functions provided by the extension are ready to use for any application Is a the code is compiled and isn’t interpreted because is already compiled to a specific platform and processor   The preliminary... Read More

How naukri made pages faster using PUSH STATE API

Some time back, here at Naukri we had a scenario: There were three pages with almost similar structure, a common navigation bar, a common right widget and a common footer (all summing upto 90% content of the page), with only few different descriptive lines(only 10% of the total content on the page) . The general requirements of the pages were: SEO was important for all of them All of them had to be assigned to different urls , title and meta tags The pages had to be bookmarkable and their urls could be shared. This may sound very simple, but… The challenge was Just... Read More