7zip is an open source archive utility. 7zip has a nice GUI to create basic archive but you need to switch to command line if you want to include/exclude folders. It is boring to type same command repetitively if you have to take zipped backup periodically.
This tiny little batch file (backup.bat) creates password protected 7z archive of the specified folders in the folder where it resides. You don’t type your password in the batch file so you don’t give away the password. You can also specify names of the folder you want to exclude from the archive. As an example, by default, backup.bat archives folders named – Source & doc, and excludes bin,obj, and temp/test folders (see customization section below to know how to change).
Copy backup.bat file in the folder which has the subfolders you want to archive. Navigate to the folder in explorer and open command prompt in the same folder (shift+right click > Open command prompt here…) . Type backup.bat at the command prompt and follow the instructions. Pay attention to instructions which appear on your screen.
Powershell (Windows7 up, all versions have powershell by default)
7zip executable path in global path variable
Following is the default 7zip command in the batch file –
7z.exe a -t7z yyyymmddhhmm_filename.7z Docs source -mhe=on -p%password% -xr!bin -xr!obj -x!temp/test
“Docs Source” specify the two folders – docs and source, to archive. You can add/change folders to include here. “-xr!bin -xr!obj -x!temp/test” specify 3 folders to exclude from archive – bin, obj, and temp/test. “r” switch in obj and bin denotes that bin and obj folder could be anywhere in the folder structure.
In 2009 I joined an onsite+offshore model software development company. This was my first experience with the offshore environment. The company had just started their operations in India and planned to grow faster. I got into the org as dev lead when it had 3 engineers, 1 designer, and 2 test engineers. Soon after, I was given responsibility to spear-head the company technically, including project delivery and technical hiring. In first 6 months we grew our team to 60 SDE and SDETs and by the end of 12 months we were more than 130. We were primarily doing projects for US clients. Our project ranged from corporate web applications to GIS based systems and QA services.
Though initial screening was done by HR department, technical aspects of the interview and final decision was with me and my team. We typically hired engineers with average 3 years of relevant experience.
This is what went into hiring process:
- Hiring requirements were raised internally.
- Requirements usually ranged from 3 to 15 engineers.
- External agencies informed regarding the requirement.
- HR received applications from candidates.
- Applications were shortlisted for preliminary call (40%-50% would get through).
- HR exec would make calls to shortlisted candidates to set-up initial interview with tech team.
- 1st round of tech interview would take place on phone (20% would get through).
- HR exec sets up personal interview for 2nd round of tech interview, usually at company’s office.
- Our 2nd round tech interviews consisted of a lot of practical white boarding, having following areas of testing:
- Technical Skills
- Problem solving (strictly coding)
- Syntax and semantic understanding
- Style of coding
- Structure of solution
- Understanding of common problems in the domain
- OOP concepts demonstrated in classes, interfaces, modifiers, methods, properties, events, delegates, etc.
- Databases, SPs, Indexes, performances, etc.
- Understanding of IIS, Servers, services, etc.
- Project Management Skills (if requirement was for technical project manager)
- Team building
- Project setup – Dev team, test team, dev infra, test infra, etc.
- Planning, estimation, delegation, and monitoring
- Waterfall | SCRUM
- Client communication
- Stakeholder collaboration – Arch, Dev, Quality, Deployment, Client, and Top Management
- Soft Skills
Only about 5-10 % of total candidates, who applied originally, would get through the final interview and get offer letter.
If you have to fulfill a requirement of 10 engineers, you must get at least 120+ applications.
To fill 100 openings in a year, we screened a whooping 2000+ candidates. I still remember 5-10 senior devs along with HR team would work on many weekends for tech interviews. I will try to asemble the questions we used to ask for technical and managerial rounds and share with you here.