Pros
A good Manager/Team lead of a software company will let you in to the world of possibilities, where your ideas and thoughts are appreciated and converted in to reality in the means of software programs and give’s you chance to contribute to the whole society.
Good payment for your work and recognises you if you and your work is worth of.
Cons
The option to transfer to other departments may be limited or non-existent. You may also encounter less opportunity for growth and promotion at a small firm, and most likely, there will be fewer people who can serve as mentors. Plus, at a smaller company, if you do not get along with your co-workers, avoiding them may be difficult.