[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology


Thread archived.
You cannot reply anymore.


[Advertise on 4chan]


File: 1778957161245724.png (324 KB, 818x1694)
324 KB PNG
> be me
> senior frontend dev at enterprise fintech megacorp
> "agile at scale"
> 23 teams
> 8-10 devs each
> every team owns "their domain"
> nobody knows what the full system does anymore

> architecture diagram looks like NATO air defense network
> every box connected to every other box
> consultants call it "bounded contexts"
> looks more like schizophrenia

> frontend is Angular microfrontends with module federation
> every page loads 17 remote entries
> opening dashboard tab sounds like Boeing cockpit startup

> "don't worry bro it's scalable"

> need to change button label
> trace starts in shell app
> routed through orchestration layer
> through host adapter
> through feature facade
> through application service
> through state adapter
> through injected token
> through rxjs pipeline
> through repository abstraction
> through backend-for-frontend
> through api gateway
> through service mesh
> through auth proxy
> through java spring microservice #84

> finally find actual business logic
> literally:
>
> if(account.active)

> entire company built around protecting this line

> ask coworker where validation logic is
> he says:
> "depends which validation"
> immediate psychic damage

> discover 6 different ValidationService classes
> all inject each other somehow
> one marked deprecated since 2021
> still critical path dependency

> every Angular service wraps another Angular service
> every Java service wraps another Java service
> every abstraction abstracts previous abstraction
> architectural recursion

> open backend repo
> 14 gradle modules
> 9 spring starters
> custom annotation framework
> half generated at runtime
> impossible to grep anything
>>
>>108838311
> ask principal architect where core logic lives
> 30 second silence on Teams call
> "well... conceptually..."

> mf actually said conceptually

> business requirement:
> "customers should upload PDFs"

> solution:
> event-driven document ingestion platform
> CQRS
> Kafka streams
> distributed workflow engine
> graphql federation
> observability dashboard
> kubernetes operator

> upload endpoint still crashes on files over 5MB

> every sprint retrospective:
> "we need to reduce complexity"

> next sprint:
> introduces abstraction factory factory

> production issue at 2am
> logs spread across:
> kibana
> datadog
> grafana
> cloudwatch
> splunk
> custom audit service

> nobody has permissions for half of them

> finally locate issue
> null pointer exception
> in mapper
> generated by mapper generator

> spend 4 hours debugging
> root cause:
>
> string was empty

> company spends 14 million annually on cloud infra
> app still takes 11 seconds to load account overview

> architecture meeting
> someone says:
> "we should decouple this further"

> physically leave body
>>
File: tldr.gif (2.99 MB, 252x263)
2.99 MB GIF
>>
>>108838311
ai;dr
>>
I don't know what like 2/3 of those words mean but it sounds awful
>>
Ai thread. Next time, just give us the prompt.
>>
> no mention of trannies
> no mention of rust
> no mention of "something somethin skill issue"
> no posting of a waifu riced up desktop posted
> no mention of esotheric meme framework is better than x
> basic enterprise tech stack indicating OP actually max have a job

Only possible conclusion: must be AI
>>
>>108838317
Literally every cloudnigger (S)aaScancer job ever get me out of this hell
>>
>>108839166
Any particular reason this keeps happening?
>>
File: 1148589677907.jpg (53 KB, 694x437)
53 KB JPG
>>108838521
not every company has this shit (mine doesn't) so this isn't necessarily ai
and even if it is I do see some similarities to my own situation, where we are building a Kubernetes based platform for other teams to deploy APIs that could run on a fucking phone (and all at once, too)
>>
>>108839185
I blame MBAs. I have only seen non-programmer types in tech jobs promote that kind of bullshit.
>>
>>108839214
How about devops people? It's their bread after all. A way to prove they are needed and doing something important. Aren't they?
>>
>>108839185
nta, my theory is that these people are midwits trying to inflate the value of their resume. they do so much fucking damage it's not funny. a lot of programming jobs ought to be shooting the shit with your co-workers, maintaining an application that runs on a box stashed in a closest. but since these faggots have FOMO if they don't use New Thing™ posted on le reddit, they turn a chill job into something entirely insufferable.
>>
>>108839185
people are told to start building something without any idea about traffic/performance reqs/etc and so they try to be prepared for the future, also they probably want to use all this new cool stuff thinking it will make their job easier
it does not. it only makes things much more complex and requiring multiple teams to maintain
microservices, my ass
>>
>>108839230
Devops people would have just been regular sysadmins if it weren't for that crap. I think they 'grew into the new requirements demanded of them to fill the role' rather than creating or demanding it.
>>
>>108839236
>a lot of programming jobs ought to be shooting the shit with your co-workers, maintaining an application that runs on a box stashed in a closet
That's what I do. Can't even share any stories. My thing just werks for years.
>>108839314
Right. Perhaps it is because everything moved to le cloud and nobody really owns shit these days. So people who were watching over hardware and maybe participated in deployment a little, now watch over VMs and pods and other virtualized bullshit.
>>
>>108839359
sometimes foss is just shit and using vercel makes the job easier and the cost difference is fucking nothing. either we will make more money then moses and be fine, or we will go bankrupt. a 10c cost difference/day between aws/vercel/self hosted crypto paid decentralized masterpiece doesn't matter for shit if the market does/does not want it
>>
>>108838362
this, very much this
fuck you op
>>
>>108838311
>ceo gets an ide
>his ai supports his idea
>runs ai multiple times, all says same thing

>it's gemini flash not even web searching
>i'm in charge of making it work because my coworker has irl shit
>i have to spend 2 fucking months digging throug hshit to make sure it's all gucci and finding a alternative, tangental use for our ai technology in a stupid field that's entirely middle men and should be replaced with ai, not augmented

i wish i could work for doge and just remove jobs form existance with ai, like right now one of my jobs is just waiting for someone to buy a full automation system i designed ffs
>>
> senior fronted engineer

But 9n a serious note, yes, this is painfully familiar. Fucking enterprise architecture is always, always, always a complete pile of insufferable unnecessary shit 99% of High-load high availability scalable stuff doesn't need to be high-load, high availability and doesn't need to be scalabale and is perfectly fine running on a box in someone's closet, because it would unironically be more available that way. Of course the moment you suggest something like that everyone freaks out or thinks you don't know what you're talking about.
>>
> Get a second coding job
> super demanding, work 10 hours a day and that's with LLM help
> Tasks are literally measured in hours
> Daily calls, team lead says "let's roll people", "keep the pace, don't slow down" literally every day multiple times
> app is some Rails Fintech shit with over architected stuff like requests, use_cases, repositories etc. Non-standard Rails in other words.
> So need a ton of boilerplate. Task that would make 2 files in standard Rails takes 10 in this shitty app.
> Each task is one sentence and you're lucky if it's on Jira, sometimes they'd just text you
> Team lead obviously designed the whole thing, proud of it and expects everyone to know it immediately
> tells me "let me see a senior level, or are we going to stay at middle"?
> If someone made a mistake, disciplines them for 2 minutes in front of everyone on calls.

fucking hilarious. Glad I left it after a month. 2026 has the most rearded fuckers left in charge sounds like.
>>
>>108841083
oh I forgot to add:
> obviously mo QA, you have to deploy and test on staging.
> If something goes wrong in production, it's your fault always and it automatically means you didn't test it on staging and you're a liar
> just 3 staging instances, not per PR instances.

I could go on and on. This was one of the most retarded shits I've seen.
>>
>>108841031
Worse, 99% of "high-load high-availability" stuff is neither high load nor high availability and gets DoS'd as soon as 2 users use the feature at the same time. Not just "it runs slow because it queues tasks" but literally "goes into a reboot loop"-tier.
>>
>>108841083
>>108841106
That's just standard tech jobs in a highly technical team. Has been like that since at least 2010 or so. Congrats on getting your first job and finding out it's too much for you, buddy!
>>
>>108838325
fpbp
>>
>>108841611
Fren, I've seen shit in my career over the past 20 years, this is not standard. This is burn out tier bullshit with complete lack of organizational skills on the part of the team lead. Just some fuvking guy who thinks he's better. This would have been impossible 10 years ago, because devs would leave in droves after a week of this abuse.
>>
>>108841670
I see you have never worked in tech before last month. Welcome to hell.
>>
>>108839359
>>108839236
>an application that runs on a box stashed in a closest
unironically this solves so many problems it's insane. i do computer vision stuff for manufacturing and all of our models run locally, but i cooperate with guys at other sites where they're hosting shit in the cloud. i get that it should be the same, but it's just constant firewall stuff or dealing with black boxes set up by other people and no longer maintained.
what rocks is when you can physically go touch the fucking machine where the code is running and triage the problems yourself instead of running tickets up a flagpole.
the cloud's fuckin fugazi
>>
>>108838325
>chatgpt wrote so much text
>>
>>108838311
Kek had similar setup in a project

> be IT consultant for fintec, telecom etc late 2020
> joint HUGE banking project
> all remove because covid
> management thought "to save money, we use remote from all over the world"
> my team: 2 germans, one dude with one arm, a chine women, and Indian checking all all the pajeet stereo types

> technical architecture actually sane
> openshift, greylog, many microservices, clear product domains
> each branch gets it actual own deployable instance, and it works

> but because of Covid and principle architect and technical train lead were both covid sceptics, quit their jobs in 2021 because of "on site requirement" with testing and vaccination etc.
> project went downhill from that point
> teams get exchanged, code review assignment via upper managment

> now I have to review Pajeet code
> Spring boot microsevce
> calling me "Sir" constantly
> nods, says yes as if he understands me
> code complete garbage, not even matching the tech spec for his ticket
> ask him if he even understood the goal of his feature "Sir yes"
> discover global variable in a service, called "turnOverCache"
> literally stores user bank account sensitive data
> git blame, was him
> was already approved in a merge before,
> is already on Staging
> heartrate instantly 180
> "dude this will cause a race condition, where a User may recive bank account data"
> "Sir, i tested it with two browsers, it's unlikely this will ever happen"
> Elaborate that "two browsers" are not enough to replicate 10k req/s on the real world system
> "Sir, but I need to cache the variable"
> start fuming
> release is about to go down
> all code and features are additionally tested by "Federal Financial Supervisory Authority" for such things
> if we give them a release canditate with such a bug, we will recive a penalty
> and have to reschedule release
> demand that he fix this immidiatly
> "No sir, this is not part of my ticket"
> hang up
> call new Oversight person..
>>
File: newhires_intuit.jpg (325 KB, 1882x1052)
325 KB JPG
>>108838311
>Work at mostly white big banking company
>One day for some reason an Indian Hindu invader is hired as VP of Technology
>He starts barking about how we need more diversity
>Starts pressuring some of the engineers with decades of experience who know the company inside and out, to take early retirement
>When one eventually leaves, he demands to be personally involved in the hiring process
>He is clearly only interested in hiring his fellow Indian Hindu invaders. HR points this out to him, so he lets a few Chinese, Muslim, and one- just one- white guy through the first round of interviews, but with no intention of hiring them
>Meanwhile milestones are being missed because of the missing engineer
>Eventually he manages to hire one of his fellow Indian Hindu invaders, into a senior staff engineer position
>The guy cannot code at all, nor does he understand simple concepts. He thought his job was to bark orders at slaves to "do work", and maybe read off a few graphs
>He ends up firing people on his team under him, and surprise surprise, replaces them with Indian Hindu invaders
>More milestones missed, and now a lot of good senior engineers are either leaving, moving departments, or thinking about leaving
>CTO gets involved, holds an anonymous grievance session so we can find out what's going on
>Monday morning tells us that he got to the bottom of the problem....anti-Indian racism is rampant in the company and we're sabotaging our Indian co-workers

I always thought /pol/ was exaggerating about them, but actually /pol/ is way too soft. And the worst part is, I don't know which company I could jump to that isn't suffering from the exact same cancer.
>>
>>108841754
... cont

> some 22 year old dude
> tell him
> has no Idea what I am talking about
> have no access to repository, cannot fix it myself
> no hotfix
> nothing
> every single branch ticket merge is a contractual kafkaeque procedure
> escalate it to new train management
> 60 year old choleric who prolly never wrote one line of code
> elaborate the issue
> tell him security implications
> dude almost in tears, literally every other team had similar problems
> he hangs up
> emergency train call, (train = all scrum teams have to join)
> 130+ People in a call
> Dude immideatly explodes
> each PO accuses each other PO of not doing their work right
> most horrible call of my life
> Screaming

> next day, all coding stops
> nobody is allowed to touch anything
> getting paid for nothing nice
> week passes
> each PO tells their team that all teams are resolved, and only single individuals are kept but moved to a new department
> get call from headhunter ho brought me there
> politly decline
> stay another month n the project without touching a single line of code because of contract
> get new Project, small team, single team, no fintec
> peace
>>
>>108841768
>I always thought /pol/ was exaggerating about them, but actually /pol/ is way too soft. And the worst part is, I don't know which company I could jump to that isn't suffering from the exact same cancer.
It's the same with /r9k/ and their opinion on women. I thought likewise they were exaggerating for entertainment and found out the hard way they were downplaying the truth.
>>
>>108841768
>I always thought /pol/ was exaggerating about them
Take a few looks around their country on Google Street View and photos on the internet. If the piles of trash and corpses floating in the river didn't give you an idea how much barbaric those people are, then nothing would.
>>
> be enterprise java dev
> management says monolith is "legacy"
> app works btw
> does milions in revenue
> response time is fine
> deploys annoying but survivable

> consultants arrive
> "we need microservices"
> "domain driven architecture"
> "cloud native scalability"
> "bounded contexts"

> nobody knows what bounded context means
> nod anyway

> spend 18 months breaking apart the monolith
> create 47 spring boot services
> each one does almost nothing
> user-profile-service
> user-preference-service
> user-settings-service
> user-settings-metadata-service

> every service has:
> spring boot
> spring cloud
> config server
> gateway
> actuator
> sleuth
> kafka
> redis
> docker
> kubernetes
> helm
> 9 yaml files
> 14 startup annotations
> 600MB RAM usage idle
>actual business logic:
return repository.findById(id);

> mfw entire kubernetes cluster exists to execute gloryfied getters
>>
>>108841754
>principle architect and technical train lead were both covid sceptics, quit their jobs in 2021 because of "on site requirement" with testing and vaccination etc
Based
>>
>>108842507
Old monolith had technical debt...
solution:
> distribute technical debt across 47 repos

> now instead of one bad codebase
> have federation of garbage

> bug appears in production
> begin distributed systems pilgrimage

> was it:
> gateway routing?
> service discovery?
> kafka?
> feign timeout?
> retry storm?
> circuit breaker?
> load balancer?
> ingress?
> middleware?
> serialization?
> one service deployed with old mapper dependency because yaml had wrong version to pull it from nexus?
> jwt propagation issue?

> nobody knows
> observability dashboard looks like satellite telemetry from deep space mission

MS = team autonomy...
translation:
> every team rewrites same boilerplate

> every repo contains:

AbstractBaseEntity
BaseDTO
GenericMapper
AbstractService
BaseController
TransactionalFacadeAdapterResolverFactory

> what does ResolverFactory resolve?
> impossible to know
> grep returns 900 matches
> all abstract

> discover MapStruct
> now code generates code that maps generated DTOs into generated response objects
> 80% of compile time is annotation processors performing invisible autistic paperwork during runtime

> change one field name
> entire ecosystem detonates

> CI pipeline duration:
> 54 minutes
>>
>>108842507
>> consultants arrive
>> "we need microservices"
YAMEROOOOO
>>
>>108842526
but at least deployments are independent now

> deploy user-service
> breaks auth-service
> auth-service breaks gateway
> mobile app DDOSes api because retries configured wrong

> distributed monolith achieved

every request now:
> enters gateway
> auth hop
> user hop
> profile hop
> preference hop
> analytics hop
> audit hop
> notification hop
> eventually database

> latency increased 4x
> infrastructure cost increased 20x
> complexity increased infinitely

> but architecture diagram looks INSANE on powerpoint

> senior architect explains hexagonal cqrs event-driven reactive service mesh vision
> didn't understand a word
> assume he's just putting random words together while showing a generic infographic
> application still just manages invoices
Wants do show some code
> opens class called:
AbstractEvent Driven Synchronous ReactiveAdapterFactoryConfigurer

> close laptop
> walk into ocean
>>
>>108842526
That's the other thing I don't get. All the microservices have coupling. Example: document storage service exposes a schema. Other services need to know this schema. This schema must be written and typed for validation at input and output boundaries. But nobody puts that in a library to share across services, so everyone rewrites. Super easy to go out-of-sync, happens literally all the time.
Oh, and testing deployments with test-staging-development? Sorry but that's too costly, we can only afford to run one cloud (prod) so you better pray that it works the first time without issues.
Tests? CI? We gave up on these years ago, we just do manual local inspections (never matches prod, even the deploy logic is different)
>>
>>108842680
You can have entirely decoupled MS.
If they are actually, and not only conceptually domain driven.

And also trust in that every MS actually does it's job. Zero trust quadruple validation is why this antipattern exists.

I worked in a Project with actually independently non trivial business logic containing microservices. They weren't micro. But 6 distributed macro services.

Individually scalable. Some have their own DB. Some share a DB. Was an amazing experience.

You could simply attach you local env with dev, test, stage, local environments with easy.
Actual API versioning, meaning api's were not just changed but had versioning.

Hardly any communication between MS. ONLY rabbitMQ events. No http calls. Mustly unidirectional. No wierd event ping pong.

Gateway for centralized routing, caching and manages loadbalancing strategies, auth etc.
Was amazing.



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.