Pros
I got paid every month.
Cons
A lack of industry standard tools and development practices. An ageing code base and out of date technologies. A ‘roll your own’ culture exists. Want to use a industry standard ORM mapping tool, Entity Framework, nHibernate? No need when you can use a flawed in house implementation, Want to use a industry standard IOC container, such as windsor, ninject etc? No, guess what? They have their own, again, flawed version of one. Want to use an industry standard static analysis tool on your code? No, guess what? You’ve guessed it, they have developed their own flawed version. Seeing the pattern? This is happening because of one person responsible for single-handedly producing these in house abominations is empire building and stifling any chance of growth or improvement with the quality of the code or product. Architects and team leaders who have risen from the ranks of junior support staff, to tester, to developer and then to team leaders or architects within a stupidly short space of time. This has resulted in senior members of staff who know nothing other than the “EMIS way” of doing things and lack the experience and exposure to good industry practice and architecture. These people form cliques and protect each others positions though underhand and questionable practices. When raised to management, these clandestine practices were simple swept under the carpet or ignored. I quickly realised, like others before and after me, it was a case of tow this lad’s line in deviant design or leave. Staying would have resulted in constant exposure to bad design and practice and a deterioration in my mental health, quite ironic when working for a healthcare solutions company. Seriously, don’t work for this company, unless you’re about to be repossessed or lose everything you have. Even then, think twice about it, you deserve better Mind you, you’d be lucky to be offered a job as most of the work is now being outsourced to India. Not quite sure that will improve quality of the product.