How to lead & influence healthy change in a large enterprise organisation?

Introduction

Those of you who know me reasonably well would know that I’ve sold my soul & I’ve taken the position of being a software engineer in the world of finance. :joy: Anyway, I’ll try to keep my rambling to a minimum, I’m aware just how bad I am for that.

So, I work in a bank, where there are many a system older than myself, not to mention some very old practices & processes that just need some major TLC. I mean in my current position, it’s really weird how things work, more often than not someone non-technical & quite high up the hierarchy is making some very hands on technical decisions. But that’s just the tip of the iceberg…

Culture

In my very own opinion, one big issue with the company that I currently work at is the culture, I was actually quite shocked to learn just how slit-throat the culture can be in IT. Rather than sharing information & embracing a very nurturing & open culture where you share your knowledge & you encourage others to get their toes wet in all aspects of IT, they’d rather stick to good ol’ silos. I’ve actually heard people say things like:

Yeah, we could do that, but then ‘x’ may take all the credit for my work.

Now my argument to that is that if you audit your work as you should, then surely you could argue otherwise, but personally I couldn’t care less. I don’t aspire to progress to a managerial position, the thought of management & being hands off kills me. I’d honestly rather earn less in a hands on role than rake it in as a manager, it’s what I love & it makes me happy! I know that’s not fair to say that all forms of management are hands off, i.e. start-ups. But in my current place of work, when you progress to management you won’t be writing any code, to be frank, I’m not even completely sure why there are so many managers & ‘man in the middle’ type managers, I think it’s just a weird idea from senior management where they refuse to provide justification, cause “I’m the boss, I say jump, you say how high!”.

I can’t emphasise enough just how shocked I was to learn that the culture can be so toxic… That pretty much made me feel kinda sad! :joy:

Technology & Quality

Personally, I’m all for “it if ain’t broke, don’t fix it”, but I’ve been working for this bank for around 6 months now & one product that I look after is broken, big time. Yet I’m finding it impossible to implement any solutions that would ultimately fix the problems that we have at present, I feel like I can’t go into too much detail here, 'cause security & all that good stuff. But anyways; it’s like Kubernetes as an example, I’m really trying to push that, I’ve even spoken with architects that agree that we want to be thinking about K8s. There are even other IT teams in the bank that use K8s, so I’m really trying to figure out what all the red tape is & why it’s even there to begin with? - Clearly it’s not even a matter of needing to do a bunch of R&D tasks? - To me, I’d argue that the hard-part has been done by the other teams that are already using it in a production environment.

Another thing that shocked me is the governance of it all, while yes, there’s a ton of red-tape, as you’d imagine would be the case with any major financial institution, but it would appear that there’s little to no standard framework around governance; i.e. there’s not rule of thumb to aim for ‘x’% with unit test coverage, no acceptable cvss score(s) in place, etc. I mean by the look & sound of things my team has just embraced how useful Jenkins can be… :face_with_raised_eyebrow:

I’m not even the kinda guy that suggests to someone that we should use ‘x’ because it’s all new & shiny, in my eyes I like to see things reach a mature state before I decide whether or not they’d be useful in a given scenario. I know there are a lot of developers around that like to use new technologies, I mean I understand the learning side of it, but as for using bleeding edge technology in a production environment, I’m a bit 50/50 there, it depends heavily on the context I find. Would you guys agree that’s a reasonable mindset to have on this subject matter? :slightly_smiling_face:

Leadership

Anyone with experience in influencing some major change, by all means give me some advice, please. But I feel that there’s a need for some serious leadership & ownership to come into play whereby a lot of the ‘nonsense’ red-tape is cut out of the way by default. I feel that there’s a need to set a standard framework on governance regarding software development, I mean it ensures that there’s some degree of quality before the software can even reach a UAT/development environment then, never-mind a production environment. I feel the need that these silos need to be burned to the ground! We need to start a rebellion! :joy:

But honestly; a lot of these challenges are very new to me, I’m just used to trying my best to make some awesome software with some damn good quality metrics in place & I’m just used to being a super hands on kinda guy. I’m not used to this nonsense around trying to push for healthy changes, trying to steer such a large company in a direction where outages can be reduced & all that.


Conclusion

So to wrap this up; I’m trying to influence some serious changes throughout the group & I’m trying to do it for the best of many people:

  • Operational managers
  • Software engineers
  • The customer(s)
  • etc.

Like I said about K8s, I feel that would be great in one of my specific scenarios due to it’s self-healing capabilities, thus improving the customer experience when interacting with a specific product. It could even reduce cost a hell of a lot, the number of times that people are paid overtime to essentially go & restart some of our VM’s is just crazy.

If you have any serious suggestions, any advice, or any input, I’d owe you one! :slightly_smiling_face:

2 Likes

I like what you’re trying to do. I used to work in a similar-ish job in a big company, and getting them to make any changes to their nonsensical, dated way of doing things was an impossibility.

In the end I gave up and moved to a different company in an unrelated business.

Massive companies have a way of only changing when they become threatened by another company. If there’s no external force pushing them to change, more often than not they never will.

Unless you move upwards and make the changes from there, of course. But that’s hard too.

1 Like

Wouldn’t it be easier* to “just” become department head to enact change?
Or build a really strong rapport with him, and submit a proposal he can take to C-suite, which makes him look good for the idea?

IMHO change is best coming from the top, else it stalls and gets reversed

*I’m being facetious, sorry, but doesn’t most of the innovations in the industry start in smaller companies before being emulated by the juggernauts?

I work as a site reliability engineer at a large internet related company.

  • If you don’t already have any design doc, design proposal, project proposal document templates, make some.

  • ensure that at the top you have author, date last updated, state (draft, in review, in progress, delivered) and signoff information is on the top. That signoff accentuates buy-in - let’s management hedge between different projects and take/share credit for projects that go well. Usually this is at the bottom or doesn’t exist and that just lets hard work be easily burried.

  • ensure you have requirements stated in a doc, rather than direct solution proposed. That makes it easier for whoever is reading/deciding on your proposal to feel like they’re invested into the project – ie. helps secure buy in for the obvious solution you’re proposing.

  • ensure your proposals have “alternatives considered section”, each of the alternatives considered should be compared with criteria in your problem statement.

  • ensure you have some risk assessments, (if you do the project or don’t do the project)

  • ensure you have costs and suggested timeframes and if you do any period project planning cycles with project priorities, include that in the doc as well. (that way your job is not on the line when someone screws up and you need to reprioritize stuff mid planning cycle and everything is late).


Otherwise, for k8s specifically. I feel like the major selling points translated into managementese would be:

  • increased operational agility by making it easier and therefore quicker and safer for developers to run isolated development environments that are more similar to production environments
  • lower mean time to recovery when issues happen due to more natural separation of persistent data storage and business logic
  • lower risk / easier to fix issues related to deployment of updates and fixes - can deploy and revert individual apps.
  • higher / better utilization of existing hardware (more cost effectivness through sharing of resources).

Observant experienced software engineer would say “hold on it’s not that easy; it’s not a panacea”, but then again what other alternatives do you really have?


Lookup the phrase: “delegating upwards”.

3 Likes

Call me young, dumb & naive, but I’m gonna be one hell of a stubborn goat in trying to force them to accept that change needs to happen! :joy:

I can totally appreciate why you’d do that, in all fairness, it has crossed my mind, but I thought I’d give it my all before I resort to that. Thankfully I’ve been able to pick up some freelance type work on the side to keep my sanity!

That’s some of the logic that I’m trying to apply with senior management, scare them by the fact that there are many disrupting financial institutions that are essentially hot on our tail. Not to mention that I think I recall Amazon applying for a bank licence, so if they get it right, they could potentially lose a lot of customers. I mean let’s be real, customer loyalty is all but extinct these days, hell, if there were some free tool(s) in place to just constantly get me the best deals on x, y & z I’d jump ship without a second thought! :slight_smile: - One interesting avenue for brokers or broker-like organisations I guess…

Hmmm… I get your point, but the organisational structure doesn’t really have your traditional departments so to speak, it’s actually really weird how the structure works & truth be told, I’ve still not wrapped my little peanut around it… It also seems to vary from one end of the business to the other, inconsistency is one hell of a fun topic in the group! :joy:

I totally agree & it’s essentially impossible for me to go out & enforce change, I’m essentially trying to ‘influence’ some senior member(s) of management, make them think they had the great idea themselves… Flat out stealing the idea from the mother in “My Big Fat Greek Wedding”! :joy:

In my experience, the answer is ish, I’ve got some friends that work in one of the other big enterprise entities & they’re actually really striving forward with the tech scene, I’m somewhat jealous truth be told… But yeah… It is very typical that a startup or SME might lead the way in this domain, with the larger entities following behind very slowly.

Hey! Awesome stuff! I bet you have to minimise risk as much as possible & all that fun jazzy stuffs?! :joy:

The only thing about the industry I’m in, I would like to think that the mileage varies massively from your points, while I appreciate the input completely, the world of finance can be a bit of a dick in this sense… Where I work, I need a green light before I can even make any project proposals, if I did it without some authorisation, I’d have a slap on the wrist to say the very least.

I mean I have done project proposals & initiation documents before, one topic that I really enjoyed talking about in a previous one was whether a solution should be implemented as a micro service or as a shared dependency. If my memory is correct, they favoured the micro service approach since it could be used to the larger organisation rather than just to the team that I was working in.

Funny you should mention this; I’ve already done a presentation to a lot of non-technical managers, giving them the very high level overview as to why we should’ve been using K8s like a year or more ago… :joy: … To be fair, I think I actually made some progress there, they seemed quite happy with all the buzzwords & phrases to say the least.

I hate mentalities like that, while I agree it’s not an easy process that can happen over night & I agree that you shouldn’t just jump to whatever comes out of Google or Microsoft or whatever just 'cause. But in this very specific case, I’d happily argue with anyone that this mentality is the wrong one to have, there have been an alarming number of incidents in the last 6 or so months & speaking from a very engineering heavy perspective, the way it was originally built, I swear whoever wrote it was blind drunk or something… It’s a complete mess & to be frank, the best bet would be to build it from the ground up again, cause the current solution is a piece of dog s**t. That’s not even my very own opinion, all the other engineers that look after the project agree, even middle tier management agree, the blocker comes from senior management because they’re not the guys that have to stay up until 05:00am doing site reliability-type tasks! :joy:

It’s frustrating how much this really happens in my current place of work & I’m trying to cut it down to a minimal… But that’s no easy task in itself…

1 Like

I mean that’s a bit off topic IMO… :joy: … Quite an opinionated subject matter that you raise there. But you’d be interested to know that I didn’t actually choose to get into the world of finance… Weirdly my journey has just brought me here by nothing more than chance, I didn’t even graduate university, long story short I ran into financial problems at home, whilst I was half way through my 2nd year of university & my family needed me to chip in, which is kidna ironic… :joy: … To cut the whole story to a summary I ended up here because it was the first place to provide a reasonable salary & a good compensation package, the roles prior to my last role(also a financial company), well I wasn’t even scrapping by, I was at rock bottom! :stuck_out_tongue: I lived off of toasted cheese sandwiches because I literally couldn’t afford to buy much else & a loaf of bread & a block of cheese lasted relatively long…

As for the whole ethics thing, I agree completely, some of the things that these big financial institutions do is legitimately a crime against humanity… The one I work for not being an exception to that rule…

At the end of the day, I don’t work for companies like banks because I agree with their ethics, it’s more due to the fact that I’m quite limited by choice & I need to pay the bills, unfortunately! :joy: … I can honestly put my hand on heart & say that I’ve wanted to play a major role in a local start-up since I started my career, but there’s literally not a single start-up in my local area… The nearest thing is a coffee shop or a hair dressing salon, in which case I doubt there’s any software/web developer positions going & they’d rather do a wix job instead of pay for some freelance dev to build them something specific! :joy:

Not entirely sure how to help you, but I’m all in for the subject.

I think what @ risk said (won’t mention directly not to bother them) is very interesting and should be studied upon

although it’ll be hard, it’s scary to change course on a giant ship

1 Like

I mean I’m not sure if that’s necessarily true? - At most I’d do what I would offer to do for any other company, big or small. Simply implement some technological solution so that it’s sustainable & done properly… Try to save money where I can & all that…

I mean feel free to disagree, but I think you’re getting a little too carried away & opinionated on the whole “bankers are wankers” subject…

Like I’ve said, I would work for a local business if I could, but since I can’t, I shan’t

I mean either way, I appreciate your input & totally, I agree 100% with what @risk said. While I had that in mind previously, it is good to iterate over those points because a lot of what @risk mentioned, they’re far from being my strong points. :slight_smile:

What country/area region of the world are we discussing, what’s the going rate for software engineers in finance/fintech there?

Is the bank a multinational or regional, retail bank, an investment bank, one of those global stock trading/underwriting banks?..

I’m trying to get a better picture/calibrate myself relative to what the workplace mentality might be like.

Just because an opinion is strong, doesn’t mean it’s wrong. Benefits accrue from travelling around the sun many, many times. One is that you finally work out who the ‘bad guys’ really are.

Anyway, since your options are limited, do what you need to do to survive.

I would, however, strongly suggest investing some of your free time into independently researching how the banking system evolved, how it currently operates, and how bankers exercise power. If you do so with an open mind, you will end up being a better human.

Good luck and fare well.

Okay, so I’m based in the United Kingdom & I’m pretty sure they’re an international organisation now… As for the going rate of software engineers in my area realistically you’re talking £40k-£80k, obviously £80k being more applicable once you’ve got 20 or so years experience.

As for the type of banking, I’m pretty sure it’s all of the above! :joy: They’re legally obligated to implement ring fencing though to ensure one domain of the group doesn’t have a negative impact on another domain… IDK, that side of thigns just bored me! :joy:

Red tape everywhere you look I guess? :joy:

Again, you’re right, but you’re just going way off topic, that’s my only real concern! :stuck_out_tongue:

Unfortunately so… Personally I hate the politics in such organisations, it genuinely drives me to madness! :joy:

I can assure you, I have spent some time on this subject matter & it’s not exactly something that makes me happy, but as they say… C’est la vie

2 Likes

Be the change you want to see, if you tried and it is still not working that’s when most people just leave because it’s better than losing hope or dismantling your values.

2 Likes

Sharing scripts/version control and lunch and learns really help with this. I’ve had a ton of success with the latter because everyone gets the same level of base understanding.

The hard part is garnering interest. But even if it’s just three of you, excitement and enthusiasm can be infectious. It can be as simple as a Kubernetes/EKS demo or showing differences in Chef and Ansible scripts.

1 Like

I am far too much of a grumpy, stubborn ol’ man to do that… :joy: … But I think that things are starting to go my way in this sense, I’m starting to see developers from other teams actually work together, even if it has been a bit of a rocky start. I.E. Yesterday one dev just lost it on one of the devops guys, it was very awkward & very unexpected, it’s safe to say I don’t know what the issue was, but damn it was awkward…

My argument to that anyway is to create an audit trail, so even if you do really care about this happening, you’ve essentially covered your back.

That’s what I’m trying to force, I’m trying to use my youth to my advantage in this sense, because even if I do step on someone’s toes, I can just say that I’m young, dumb & overly ambitious, or something along those lines anyway. As for Chef & Ansible, the irony behind you mentioning that… They discontinued using tools like that for reasons I cannot remember to save my life… :joy: