I'm an Engineering Manager for a large company and have been for a number of years. For our large team we will rank the team based on perception of managers. After that we will then manually collate coding stats from all repos we work on. Unfortunately for the consensus view here and in the article, you get a 100% hit rate on who you think poor performers are and the lowest coding contributors.
For top performers it's more nuanced. In general they will be top of the contribution stats but sometimes if they're doing R&D or hard work then the stats are not very meaningful. But that's why we don't rely on them.
So metrics have their place to inform and color existing perception. But they will rarely change perception completely.
JP Morgan Chase & Co | Lead Software Engineer | London, UK | ONSITE (hybrid)
I'm hiring for an experienced functional Scala developer to help us with intellectually challenging projects in the areas of metadata and model driven engineering. We build bespoke code generators, numerous codecs, data model authoring and storage platforms amongst other things. We're re-engineering our platforms from on-prem cloud to AWS next year.
We use a Typelevel stack. New services are typically written using Tapir/Http4s, Cats Effect and Doobie.
Within the bank we help run a functional programming interest group, we do Scala training and/or mob programming sessions weekly, many of the team frequent Scala meet ups in London.
Whilst we do work in feature teams where we have large deliverables, you will have to complete individual projects so you'll need to be comfortable working independently.
Some of the role requirements:
- Leads the engineering of cutting-edge solutions in the areas of metadata, data model authoring and storage, and data in place/data in motion
- Collaborates with our users, product management, architecture and stakeholders in our sister teams to ensure we build the right solutions
- Applied development experience in functional style Scala
- Experience working with asynchronous runtimes like Cats Effect
- Meta-programming through libraries such Shapeless or Magnolia
- Domain Specific Language design and interpretation
I'm fairly sure that's total comp - so with a 1st year bonus guarantee. After that first comp cycle, we all know which way the bonus will go...And then you're fighting the rest of the team for that 2-5% merit budget.
If that's just salary - I have no idea what Citi are doing, it's way out of market.
It's total comp. So salary plus bonus. It's high but I've seen higher at JPM in terms of total comp at VP level. If we're talking pure salary then yes £190k is base for a seasoned ED.
The author seems to think that people have infinite time. Many points require an allocation of time that most people - in particular those with families and caring responsibilities - do not have.
Remove bad actors? What if the bad actor is the mother/father of your kids? What if they're a parent who requires care you/they can't afford so you have to do it yourself?
It's all so simple isn't it. 10 steps to banality.
It could be rewritten as "have enough money to do what you want without being overly concerned about the consequences, because you can make the consequences someone else's problem with your money"
What you're talking about there is a Model Repository. We're building one at the bank I work at, except because our modelling language (or meta model) is based on OMG's MOF we can generate artifacts (code) from our models. You can't do that with TLA+ as far as I know. It's pretty powerful - you can compose models together very easily, as well as generate loads of useful things for data-in-motion.
This is such a naive and bourgeois argument isn't it? Free time is only valuable or meaningful if you have the means to make it so, and have been given opportunities to cultivate interests. If you're living in poverty, the quantity of disposable time will not make up for the lack of cash.
The real problem is developers not understanding Object Oriented programming. Many developers write procedural style in Java or any other OO language. So you get God classes, methods that are hundreds or thousands of lines long etc - I'm sure we've all seen those horror shows. It's just a lack of education coupled with a culture where there is no strive for technical excellence.
You need high quality developers in Java, just as you do in any other language.
It seems like the article's beef is with OO programming, not Java per se.
For top performers it's more nuanced. In general they will be top of the contribution stats but sometimes if they're doing R&D or hard work then the stats are not very meaningful. But that's why we don't rely on them.
So metrics have their place to inform and color existing perception. But they will rarely change perception completely.