You could have searched this forum for the answers to your queries. The first challenge of retention is to understand why people leave the company. For this, you need to do attrition analysis. Click the following link to refer the details of it:
Additional factors that retain employees are:
a) Organisation's culture
b) Growth of the organisation
c) Dynamic and motivating leadership
d) Career plan of the employee
e) Recognition of the employee's work
f) Employee Development plans
g) Does the reporting manager or HOD treats his/her employees fairly? Is he/she a bond between employees and the organisation?
and so on...
To retain employee for short period and long period improve the work life balance i found the most of IT companies have tight work schedule and project also work pressure and most important career growth is main reason as per IT trends but above this we should be care about Organisation culture, Appreciation , Rewards and there involvement in work.
Kindly concern the above.
It is rightly pointed out that you should find out reasons for attrition preferably through Exit Interviews.
From my experience following are the main reasons singly or in combination for attrition which might help you in analysing your own:
1. Compensation structure lesser than market trends and substantive salary jump in new company.
2. Opportunity to work with new technology.
3. Reputed and stable organisation.
4 Nearness of workplace from home ( Lesser travel time)
5 Overseas work opportunity.
6. 5 day week working and flexible timings.
7 Fast track career advancement
8 . Fair HR policies relating to Performance Appraisal and Reward and Recognition system
9 .Bad boss.
Above reasons are not purported to be comprehensive and also not listed in terms of any order of importance.
While on this, it may be of interest to note that in a recent survey on attrition, "Bad boss" has stood out as prominent reason for attrition.