The company is overflowing with middle management that has been entrenched in their positions for decades. The ranks are full with people who have nice personalities but sub-par technical skills and seriously lack business acumen. They themselves do not understand how uncompetitive they are, nor their colleagues and immediate management realize this being a fact.
Ten years with the company gets you a free T-Shirt, and a mention in a quarterly email send to your immediate co-workers. 25 years - gets you an invitation to a banquet with upper management.
The management structure is overly complex. There are multiple layers of managers, directors, VPs, SVPs, etc. They shuffle their positions around every 18-24 months. There are cases when division level managers have moved on after only a few months on the job.
CEO wants the company to be Agile and competitive. Rank-and-file developers and analysts generally support these methodologies. Middle management has made very little effort to embrace this concept and consistently slow down any proposals and efforts by ground-level workers to move ahead with getting things done in a modern way.
Senior analysts and directors of projects managers heavily employ outside consultancies on all projects with higher than normal visibility. This is done so that any failures can be readily attributed to vendors instead of their own lack of ability to deliver measurable results. Significant funds have been mismanaged over the years on projects that have been cancelled because internal project directors have no clear vision and hired overseas vendors who have no skills to deliver. Inside talent is restricted to working on lights-on projects because only they really understand how things work, and only they know how to keep the boat afloat.
Over a number of occasions inside developers were denied proposals to introduce test-driven development and continuous integration to existing production systems. Answer given is always the same: "too much risk right now", "you're busy working on something else", "someone else is already working on a new system that will make what you propose obsolete". Over ten years of same type of answers has unequivocally proven that they have been and continue to be wrong in their assessment of the situation and their ability to succeed. Bottom line business results have proven that their long-term vision has caused acquisitions of successful businesses to be plundered and made those acquired lines of business no longer competitive in a market place.
On more personal note for those considering working as a developer or a business analyst:
- Unpaid overtime is expected and is a normal occurrence if you get to work on projects that try to deliver something new. It is impossible to work 37.5 hours work week and have a favourable evaluation of your performance by middle management.
- Any type of innovation or process improvement is first must be discussed and approved by a development consultant (senior non-coding theory-driven system architect). Unfortunately, there are no independent experts who can confirm that opinions dispensed by dev-consultants are viable.
- SCRUM, Agile, CI & CD, XP, CQRS, and DDD are mostly foreign concepts to almost all business silos within Manulife
- proposals to introduce ready-to-deploy open source solutions are rejected even when such solutions are needed for completely segregated business entities, and as such present minimal risk
- don't expect a chance to discuss innovative frameworks with your superiors because more often than not they have skills to understand you and lack any interest in learning anything that puts them out of their comfort zone
The company generally cares more about its customers than about the welfare of its lowest ranked employees. Expect to be penny-pinched for everything that company is not required to provide you. Your health benefits will generally be less competitive than at other companies. If will need to pay for parking at work. If your office has a cafeteria than expect to pay as much or more than if you were to buy your lunch elsewhere.