Aug. 30th, 2024
а вот ещё насчёт менталитета
Aug. 30th, 2024 02:09 pm(Это Жаботинский пишет.)
This must be Friday, and nobody's there, but there's a lot of actions.
Brad and Esteban are getting me with their urgent pull request. Brad has small but serious changes, regarding keys, GWT, all that. I had approved it, but wrote to him that in general it's not a good idea to make these changes not having tests for that. Of course, it's not my company, so there's no reason to be emotional...
Spenser is writing that ok, if we use the address spenser+test@ourcompany.com the new user registration works ok, but not till the very end: permissions were not properly stored. Well, now what. I offered him a choice: either we close this case, and he opens a new one, or we update this case, so that it would not say "can't register", but explain what's the problem; and in any case he should create another case, or adds some information to this existing case. And he answers: ok, but then he'll have to wait for three months until the ase reaches developers. Well, he's right. So we came to an agreement.
There was a meeting, that is, a "standup"; for some reason we started in Spanish (me, Esteban, Mike, who is also from Puerto Rico, and his granny had taught him phrases like "una mas"); but then more people showed up, and we started all talking, and Mike started bugging me with a new very urgent case, and it must be fixed urgently.
Do I mind? I'm being paid (just got another check), I sure can do it, with pleasure.
So now I started investigating the issue. Well, looks similar, "error creating a user". It happened on July 8th, and now it's urgent. That is, we have to investigate it before September, before the rains start...
So, I looked deeper, and I got a feeling that it's a duplicate; I was already working on something very similar, with the same Mastroianni (an engineer, not an actor). But July logs in Datadog are unavailable (may be extracted from some enigmatic archives, no clue where they are); so I wrote to Mastroianni, asking whether he can reproduce it.
A couple of hours later I looked into it again (was busy with other things), and Mastroianni writes that he managed to reproduce it. Wow! Ok, I go to Datagot - and see no trace of it. So I bug Mastroianni again. (And Mike is also nervous, he bugs me on slack regarding this.) And it's almost 5pm, and banks don't work that late. But! We managed to connect with Mastroianni via huddle (but I had no sound), and Mastroianni reproduced the case, and I found it in the logs.
Well, cool! I look through the logs, I find who sends the error; I know this service, I look into the code, locate the line in the code. This is not the fault of the service, it just receives an error from another service and reports it.
Ok, more logs search. And in the logs that other service reports HTTP 200 twice. (HTTP 200 is (almost) the best code, we all love it). So I ask, on slack, the authors of this service of ours, how would they interpete it at all if we get a 200? And they say: here, that other service sends us an error. Wait, where's the error if we have HTTP 200?
Now Mike shows up in huddle on slack and says: haha, these are our pardners. They only send an HTTP 200, accompanied with a huge JSON content, and that JSON content has an error code (in our case it is 1007), and a text saying "failed to create an account".
Oh, wow. So we just redirect this case from OPS to those idiots that are sending us HTTP 200.
Then Mike told me some historical facts. That when that company, of which our team is a part, was being acquired by the big company, it turned out that the big company already had a department solving the same problems as we do. Except that that department did not know how to solve problems. They had slapped together something in Go, Python, Java, in short, as they say in Russian, out of shit and sticks. Well, and our code is, relatively, pretty clean. There's the reason why we are being paid better.
Well, of course it's a sheer pleasure to throw the ball over the fence to the idiots' field and go enjoy the long weekend.
Oh, and I also asked, in slack, whether, when in our service we mention cash, don't we mean, by chance, cache? Mike started giving me a lesson of English language; but I had shown him the code where both cash management and cache management are mentioned; and this was the moment when Mike told me this story of the company, and how we are fighting against these internal competitors.
Well, it's all totally funny, and I'm just a spectator.