Pros
Good learning for freshers. Everything is stable once you get a project. These days they are offering packages at par with service companies if you are technically good. Variable is paid on monthly basis. Can get onsite opportunities if lucky.
Cons
We need to proactively search for projects. It may be confusing for new joiners as they may not know whom to approach for projects. Heard about people getting laid off on taking long leaves or unable to get project for couple of months. One colleague was laid off even after getting allocated to a new project as his rating was bad from last manager. Fortunately, no such issues faced by me. Appraisal is only for feedback and filtering, not for hikes. Sometimes felt like managers have more power. There are decade long tenured, few of them are technically good and helpful but others will just poke and find unnecessary faults in your to not feel redundant in the company without having much work.