Pros
Supportive management; Solid job statility. Relatively small company staff-wise: people know eachother and get along well (for the most part); Flexible working hours; Above-average pay and benefits; Hybrid work possible.
Cons
Poor onboarding (swim-or-sink environment); Not much room for career growth; Little-to-no investment in new projects (hence why career growth is stagnant); Poor, or non-existing internal documentation (especially if it is not software related): be ready to figure things out on your own. Relatively high-turnover for a small-sized company (especially senior staff) You will be asked to perform tasks completely unrelated to your field (i.e. having a Developer send out invoices to clients on behalf of Project Managers, or having a helpdesk technicians perform functional testing on their off-time)