Pros
Developers working with you are great (the only reason this company stays afloat)
Cons
Be prepared to enter in a ColdFusion codebase nightmare: nobody wants to use ColdFusion nowadays, but if you are going to work here as software engineer eventually you have to, and no one tells you that during an interview; 60% of the entire codebase is ColdFusion. You are not going to learn new skills, you will learn how to constantly patch broken/old software in an unorganized environment. The use of solid and mature software frameworks is discouraged: everything is custom made in house, therefore no consistency across code. The bad thing is that it is a recognized negative behavior, but there is no willing to change this mentality. Every piece of codebase has a collection of unwritten rules that only low level engineers have to abide by, but "inner circle" engineer have the power to bend at will w/o accountability. Technical Debt is grossly overused/abused and constantly pushed under the carpet creating a patch-based code development (more than a year and still no tech debt repay plan in sight). There is no clear software development plan/roadmap: CTO and tech managers have no real plan/idea on what to do for the next 6 months, after more than a year asking for a simple roadmap software development plan the only answer has been "we're working on it and we'll have it and share it in the next month"... still nothing. The only short-term plan I've witnessed was to make the CEO happy by changing the logo and having more testers working for a while. After a year of promises to address what's broken, none of them were addressed. As a former colleague used to say to describe the software development at Teaching Strategies: "you can always put some fancy icing on a rotten cake, but at it's core it's still a rotten cake".