Pros
I’ve learnt a lot. That’s for sure. By the project you are assigned, you may improve yourself on e-commerce platforms, Java, .Net or even PHP based projects. You can also improve yourself in some agile project management. Which also improve your English verbal communication skills. There is an opportunity to improve yourself by using Online Courses like Udemy.
Cons
If you’re a junior, there are so much thing to can learn. The project you are assigned (e-commerce, .Net, Java or PHP) and the team members will help you improve yourself in software skill topics. But by the time past, you will understand you’re doing the same thing over and over again. For those who wants to learn something new like NodeJS, Redux or Elastic, this may not the place for you (of course there are some project which you can use these but you may never be assigned to them). The position you are applying and the project you are assigned, usually they don’t match. So you apply for “Java Developer”, but you may end up being assigned to some e-commerce project which you have no idea about the platform at all. So there will be hard times warming up your new project. And good bye to your old skills. There is definitely equality problem between the teams and members. If you get along with the management team, you will get what you desire ( Raise Percentage, PC hardware, etc). If not, you are doomed. Good Luck. Happy hour on every Friday with limited beverages. So be quick or you will get nothing :)