Pros
Great learning if you get a good project
Cons
Long working hours (sometimes 14+ hours). They don't care about employee's health and work-life balance. You are not being hired for a particular project (just like any other service-based company). They will have you sit in a separate building where everyone is on the bench. You will be enrolled in the company designed courses and tests based on your profile. And based on your performance in those tests, projects will pick you if they like your profile/scores. Now you again have to give multiple rounds of interviews to get into the project. And the type of project you get depends on your luck as it can be the worst project of your career or one of the best. If you get selected for a project and you reject it then the hiring manager will never consider you for another project which is handled by them (EGO problem).