Pros
- Smaller teams - Can control your own growth rate - Big projects early on, but apt QA makes sure you don't release buggy system - Core software, not web, which is a good thing for me. You have to consider communication between different versions, data migration etc. Interesting challenges. - Extremely complex system with thousands of configurations, requires clever thinking to solve problems - No stupid SQL queries, never understood why people liked them - Excellent in-house bug tracking system - Demands hard-working and smart people, if you are not then you WILL get fired - Excellent culture of Staff Meetings, kind of shows that CEO still cares about her minion workforce haha. I like them.
Cons
- Everything depends on your manager, if he is a sadist you are screwed - I feel Software Devs should have more say in general functionality - Some teams still use VB6, most have moved to C# - Too many people to talk to, approvals needed, I guess they need to maintain standards, but sometimes simple things can take time - Does not care about industry trends such as new technologies etc. Although recent efforts show a wave of change. - Lots of old code - Huge learning curve due to extremely complex software - If you are stuck working with VB6 then career opportunities are 0. I believe Cache is still useful because it is a neat NoSQL language and what's important is critical thinking not the language, but there is no hope with VB6.