Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "timezone difference"
-
Things have been a little too quiet on my side here, so its time for an exciting new series:
practiseSafeHex's new life as a manager.
Episode 1: Dealing with the new backend team
It's great to be back folks. Since our last series where we delved into the mind numbing idiocy of former colleagues, a lot has changed. I've moved to a new company and taken a step up as a Dev manager / Tech lead. Now I know what you are all thinking, sounds more dull and boring right? Well it wouldn't be a practiseSafeHex series if we weren't ...
<audience-shouting>
DEALING! ... WITH! ... IDIOTS!
</audience-shouting>
Bingo! so lets jump right in and kick us off with a good one.
So for the past few months i've been on an on-boarding / fact finding / figuring out this shit-storm, mission to understand more about what it is i'm suppose to do and how to do it. Last week, as part of this, I had the esteemed pleasure of meeting face to face with the remote backend team i've been working with. Lets rattle off a few facts to catch us all up:
- 8 hour time difference to me
- No documentation other than a non-maintained swagger doc
- Swagger is reporting errors and several of the input models are just `Type: String`
- The one model that seems accurate, has every property listed as optional, including what must be the primary key
- Properties go missing and get removed at the drop of a hat and we are never told.
- First email I sent them took 27 days to reply, my response to that hasn't been answered so far 31 days later (new record! way to go team, I knew we could do it!!!)
- I deal directly with 2 of them, the manager and the tech lead. Based on how things have gone so far, i've nick named them:
1) Ass
2) Hole
So lets look at some example of their work:
- I was trying to test the new backend, I saw no data in QA. They said it wouldn't show up until mid day their time, which is middle of the night for us. I said we need data in our timezone and I was told: a) "You don't understand how big this system is" (which is their new catch phrase) b) "Your timezone is not my concern"
- The whole org started testing 2 days later. The next day a member from each team was on a call and I was asked to give an update of how the testing was going on the mobile side. I said I was completely blocked because I can't get test data. Backend were asked to respond. They acknowledged they were aware, but that mobile don't understand how big the system is, and that the mobile team need to come up with ideas for the backend team, as to how mobile can test it. I said we can't do anything without test data, they said ... can you guess what? ... correct "you don't understand how big the system is"
- We eventually got something going and I noticed that only 1 of the 5 API changes due on their side was done. Opened tickets. 2 days later asked them for progress and was told that "new findings" always go to the bottom of the backlog, and they are busy with other things. I said these were suppose to be done days ago. They said you can't give us 2 days notice and expect everything done. I said the original ticket was opened a month a go *sends link* ......... *long silence* ...... "ok, but you don't understand how big the system is, this is a lot of work"
- We were on a call. Product was asking the backend manager (aka "Ass") a question about a slight upgrade to the new feature. While trying to talk, the tech lead (aka "Hole") kept cutting everyone off by saying loudly "but thats not in scope". The question was "is this possible in the future" and "how long would it take", coming from management and product development. Hole just kept saying "its not in scope", until he was told to be quiet by several people.
- An API was sending down JSON with a string containing a message for the user with 2 bits of data inside it. We asked for one of those pieces to also come down as a property as the string can change and we needed it client side. We got that. A few days later we found an edge case and asked for the second piece of data to be a property too. Now keep in mind, they clearly already have access to them in order to make the string. We were told "If you keep requesting changes like this, you are going to delay the release of the backend by up to 2 weeks"
Yes folks, there you have it, the most minuscule JSON modifications, can delay your release by up to 2 weeks ........ maybe I should just tell product, that they don't understand how big the app is, and claim we can't build it on our side? Seems to work for them
Thats all the time we have for today,
Tune in for more, where we'll be looking into such topics as:
- If god himself was an iOS developer ... not
- Why automate when you can spend all day doing it by hand
- Its more time-efficient to just give everything a story point of 5
- Why waste time replying to emails ... when you can do nothing instead
See you all next week,
practiseSafeHex14 -
How to beat jet lag with style:
When your normal sleep schedule was so broken it became completely normal in the different timezone.
I used to sleep from 5am to 1pm in my country. With a -7 time difference this became 10pm to 6am.
Should I be happy?9 -
So one year ago I was working at this company from the US, me being in Europe, which automatically implies there is several hours of timezone difference.
The eng. manager decided we would have a release tomorrow (decision was made one month earlier), and stuff was being prepped up to make that happen.
In the US the workday was about lunch time and in EU it was one hour before finishing. The manager gets us in a meeting and asks me and another dude to do some testing that would take several hours to do. This testing could have been done several days or weeks earlier.
40 minutes after that meeting I get a private message from the PM asking for the status of the test...
Me: aaa.. well I started it and will continue tomorrow
Manager: wait what? we have launch tomorrow, this testing has to be done by tomorrow
Me: it's the end of the workday here, I got personal errands that I have to attend to
Manager: uhm ok ... I see...
I was just messaging something in the public chat right before calling it a day and the manager writes "thanks for the input, your day is over now", completely out of context to the conversation I was having with whomever.
There was no question of "can you stay extra hours and do this?", there was no "hey, I know your day is over we will pay you premium hours with this amount as according to our contract, could you do this now as we have release tomorrow?" ..no ..just .. "do it!". I automatically assumed that ..hey, maybe he wants to do this during and after the live launch (and yes I do admit my mistake of not asking just to be clear, but I assumed the manager knows that there is a timezone difference ..like it's a no brainer).
I can not tell you the heat sensation I had after that last reply from the manager ... it was completely uncalled for, and unreasonable.
I mean why not make a pre-launch phase where you put stuff on the staging server, and perform all the necessary tests and then when you get all the green lights from testing you then proceed with the actual deploy? ...no ... mention this like right at the end of the day before the launch....
And another thing that scratched my neuronal cortex is, how does he know exactly how long the tests would take?12 -
Story of me trying to connect to a colleague from neighbouring team with 12 hour difference timezone:
Me: Hey! Shall we catch up to discuss a feature that will help us dominate the world?
She: Sure.. what time works for you?
Me: Since we have timezone challenge, I'd say boundary times would be good so none of us have to stretch.
She: umm.. good..
Me: How about 07:30 PM your time?
She: oh sweetie.. evenings don't work for me.. I want my evenings free..
Me: fine.. how about 07:00 AM your time?
She: no darling.. I am not a morning person..
Me: GO FUCK YOURSELF BITCH. I CAN'T COMPLY WITH EVERY TANTRUM OF YOURS.
And with that.. I didn't respond to her invites which were either super early for me or super late. Let her keep waiting..
Juniors with ego are shittiest folks to work with.31 -
1 friend who is currently studying in Canada.
I am not aware if he uses devrant or not.
Met him in a national robotic competition 3 years back.
Somehow, we exchanged numbers and nowadays we talk often whenever we get time (considering our busy life and timezone difference)
He is studying robotics and frequently sends me his designs and output with 3D printer.
About me, I left robotics(to be specific embedded) and got a job and working on backend these days.
Though, it's great talking to him and getting to know how the education goes there and his new works.
He also has a beautiful love story(not yet completed) which is another fun part to listen from him. -
Working with client at different timezone (+3 hours difference). Client time: 5 P.M.
C: a blocker issue found
Step to reproduce:
Step 1: import the attached file
Step 2: blabla
Please get this fixed today.
Me: *where's the attached file?* Opens up ly*c, type his name and.... status offline.
Okay then, time to post my first rant. And get depressed until cob. 😔1 -
Today I learned why it’s so important to have life outside engineering (better put, I remembered this).
For the last couple of weeks, we’ve been working hard to catch some deadlines, contributing to a large oss project. Getting up at 4am, working with the team in my timezone, having some time with family then working with people with 6-9 hour difference was extremelly challenging and I was so tired I literaly was a fucking pain to bear with.
Today, on Saturday, my wife started cleaning the bathroom sink drain. You know, started... “won’t fix” was not an option. First, the dirt and the smell, mmmmmm, you just have to love it. And then the thing collapses (yes, I was optimistic, trying to clean it just partly - I learned not to fix if it aint’t broken, I wonder where).
It’s of course built of trivial parts, but the water just finds its way. Needless to say, I am afraid of it :). In the end, it got resolved. Just as any bug we squash - with some anger and plenty of dirty words.
During the whole thing, I thought to myself, that all that stress at work is quite bearable; it put everything back into a perspective. Great feeling!1 -
My preferred stack is Rails/NginX/Postgres, or Node using the same.
I have a fair amount of material for this week's rant, but in my stack's defense, the quantity is primarily because I've been using it for so long, and I'm apparently a talented breaker. I may share other stories if the motivation arises.
However, today I ran into something definitely deserving of calling out.
The default datatype for a Date+Time column in Postgres is `datetime` which means "date+time without timezone". (while `datetimetz` instead stores the timezone).
Apparently when comparing a datetime with a datetimetz, Postgres doesn't compute the timezone difference correctly, leading to some very unexpected and confusing query results.
Today, I had a record that was both pending (expires_at > now) and expired (expires_at <= now), where now is a DateTime (with tz) literal from Rails. After half an hour's frustrated delving and baffled expressions at query results, I finally figured out that the database's math was incorrect when comparing UTC (+0) and PST (-7).
This during a semi-high-priority bugfix that's blocking for a coworker.
While Time and all of its nuances are honestly extremely difficult to handle correctly, I didn't expect Postgres to get this relatively simple part wrong.
Shame on you, Postgres.
I expected better.3 -
I was searching for an internship while studying abroad (7h timezone difference, I was expecting some difficulty to communicate). I also sent my resume to a friend so he could pass it around.
So one day I receive this mail, with a company telling me they're interested in my profile. When reading through the previous messages below I see that actually my resume hopped from my friend to one of his to another person etc...
Quite glad that this human link brought me an opportunity, I ask for an interview over Skype. When we finally settle for a date and time, "interview" starts by him basically saying me : "We'd like to hire you, do you have any questions?"
Well that was easy 👍 -
Someone's guts will be torn out tomorrow and put up on a nice clean razor barbed wire ...
I was wondering what the fucking fuck messed up my brain - till I realized that some dev mixed up the timezone on one of our servers. Dunno how the dev managed it - but the end result was not funny.
Due to the difference in time strings the newer backup had an older timestamp - and vice versa.
Which - when you want to do mass clean up and migration - is a very fucked up thing.
I had to manually check dozens of backups to make sure I got the right ones...
-.- knife goes in, gut goes out. Thx Bart Simpson.8 -
I worked on a project that used an archaic homegrown library written by a consultant that had zero documentation, tons of reflection and here is the kicker... the consultant refused to give us the source code as it was "his intellectual property" so we couldn't make any sense of how to actually use it. Moreover, he worked remotely so the timezone difference between us meant that any questions we had took ages to get answered. Glad to be away from that project now.4
-
Im currently doing my first project as a junior dev. I'm working with asp.net core and I had only used regular asp.net before. The project owner who was the guy that used to own the company I work for had only asked me if i was versed in asp.net and said that it was what I was going to work with. So from the start I'm a little bumed out. The difference isn't enourmous, but still.
First day, he says that we are going to use TFS for version handling (god damnit) then he says he has started a bit and has done the first push... And we're missing files. But he's asleep by the time i do the pull (9 hour timezone difference).
Next day he has gotten all the files up and I also get to know that I will be working alone and still have to use TFS.
A few days later he tells me I'm gonna present the first version the next week...
Oh, and did I mention that this is for one of the biggest companies in the world that the very top managers will use. Including CEO, cto etc4 -
I'm currently the only dev that works with a client's dev team. That's not really how we usually work, usually it's a whole team of ours.
Three aspects why this sucks:
1) the client's dev team is made up of juniors and junior to intermediate devs. All of them are new to scrum. I therefore have to constantly support (dev & agile workflow), check all the PRs and have to think of everything in Refinement meetings.
2) the client's based in another timezone and the PO is super busy because we're the only agile team in their company. Therefore this is going to be the third Friday in a row where I have meetings until 6pm.
3) I also have a specific time frame I have to start working for my company, so I constantly work extra hours due to the time difference.
I'm just tired.4 -
I just came with a problem trying to get the value of an HTML input of type date and trying to throw it into a Javascript Date object... After about an hour of searching (Google, Stackoverflow) I realized HTML5 date inputs use UTC timezone (defined by W3C) and Javascript uses your local timezone and this difference is messing with my code giving me a JS obvject 1 day before the HTML date...
Why they do this kind of thing?1 -
Story of a first-time hackathon.
So, I took part in the COVID-19 Global Hackathon.
Long story short, I got excited at OCR and just went with the most challenging challenge - digitizing forms with handwritten text and checkboxes, ones which say whether you have been in contact with someone who could have Coronavirus.
And, unsurprisingly, it didn't work within 4 days. I joined up with 2 people, who both left halfway through - one announced, one silently - and another guy joined, said he had something working and then dissapeared.
We never settled on a stack - we started with a local docker running Tesseract, then Google Cloud Vision, then we found Amazon Textract. None worked easily.
Timezone differences were annoying too. There was a 15-hour difference across our zones. I spent hours in the Slack channel waiting.
We didn't manage the deadline, and the people who set the challenge needed the solution withing 10 days, a deadline we also missed. We ended up with a basic-bitch Vue app to take pictures with mock Amazon S3 functionality, empty TDD in Python and also some OCR work.
tbh, that stuff would've worked if we had 4 weeks. I understand why everyone left.
I guess the lesson from this is not to be over-ambitious with hackathons. And not to over-estimate computers' detection abilities.rant covid hackathon slack s3 google cloud vision python tdd aws tesseract textract covid-19 global hackathon2