Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
BabyFur Denny
Mar 18, 2003

Pollyanna posted:

We have a situation at work and I dont know how to explain it in a way that properly shows why its stupid.

We have many Agents. An Agent can be Expired, Inactive, or Active. Inactive and Active represent their status with some optional feature we have. We get a (really crappy) CSV from a company listing which of their agents are still with them, and if theyre eligible for that optional feature. Our task, which has been in testing for like 2 months now, is to keep our records up to date based on this CSV they send us.

Im of the opinion that we shouldnt be doing this at all and instead we should just give them an endpoint that lets them manage their agents directly on our platform because trying to keep our records in sync with their CSV is a pain in the rear end and has proven to be really touchy, brittle, and unreliable. Am I just being picky/lazy when I say it sucks, or is it genuinely a bad idea?

It depends on how much control you have over that other company. If they don't want to talk to your end point but you need the data then you have to eat that lovely csv.

Adbot
ADBOT LOVES YOU

Pollyanna
Mar 5, 2005

Milk's on them.


Rubellavator posted:

Lol, yes, that sounds stupid. At the very least I hope there's some automation that sticks the csv into your database. If you're doing a process like that manually it's a waste of money and resources.

It was manual until recently :negative:

kitten smoothie
Dec 29, 2001

Boiled Water posted:

My boss: You need to extensively test this software you wrote which sends out texts when cars are stolen, it's too verbose.

Also my boss, on the previous friday: We need something that can alert us when cars are stolen and we need it today!

Me, to boss, in 1-1: Our deployments have been really rocky, and since I'm not on west coast time, it's extra rough for me. Last week I was in a video room with you all until 11pm, waiting to push the Android changes because backend discovered a last minute blocker bug and they had to take a couple hours to fix it. Can we put together a proper release plan with a rollback strategy for when we can't just throw the switch and go home?

Boss: Well that's true, but Android team held up the release last time with a blocker bug, you remember that right?

Boss, to me, on morning of prior release day: Hey we've made a critical change on backend and here's the new data structures and API flow. I need you to update this ASAP. I don't want to wake up QA in Tel Aviv for this, and we don't have time for it anyway, just ship it.

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

Shirec posted:

Wow, that's just.... uh, like spot on in most places? Like I think some things are almost verbatim quotes of how he explained his choices. The only plus to that is that the "codes" were supposed to be able to be coded against, like you said in a giant switch statement, but ALSO to get translated by our front end thing. Which blah blah, so much easier, but gently caress him, it was still me manually coding against each error statement to look up what the Spanish translation of it was.
I also forgot to add a few repetitions of "I don't understand the problem" because that's a classic expression from assholes. They just say it over and over again while somebody tries to explain the problem to them. They're all mouth and no ears. So just imagine I flung a few of those in there like a garnish.

I just channeled a little bit of my old tech lead taken to 11 against a guy. Some other team had hired this person who was honestly not very good, but he had a really nice-looking resume. The original team never brought him in for an interview or anything to see what he could actually do, and then the guy was helpless when he finally showed up. Then they started to kick him around and treat him like poo poo because he didn't automatically know how to do anything. I didn't hold it against him but rather the organization that decided to relocate this guy and his family of five or something, cut him off from his master's degree program, then demote him, then fire him--all after hiring him over a sheet of paper. The tech lead was a real prick to him.

Convincing EE's in scripting situations to use exceptions instead of magic numbers is a common problem of mine. When it comes to translating the error messages, the exception itself could just contain the error message instead of having some magic token float around the program until it hits some magic translator. The problem there is that when you add a new error, you have to put some magic number in one file, the translation in another file, possible some other management in other files, and then you get to actually use the error where you intended. This scales horribly and is easy to screw up. However, it's common enough in C, although you can even fake exception handling in there to some extent with what I think is the least-controversial usage of C's goto statement.

Jose Valasquez
Apr 8, 2005

Pollyanna posted:

We have a situation at work and I dont know how to explain it in a way that properly shows why its stupid.

We have many Agents. An Agent can be Expired, Inactive, or Active. Inactive and Active represent their status with some optional feature we have. We get a (really crappy) CSV from a company listing which of their agents are still with them, and if theyre eligible for that optional feature. Our task, which has been in testing for like 2 months now, is to keep our records up to date based on this CSV they send us.

Im of the opinion that we shouldnt be doing this at all and instead we should just give them an endpoint that lets them manage their agents directly on our platform because trying to keep our records in sync with their CSV is a pain in the rear end and has proven to be really touchy, brittle, and unreliable. Am I just being picky/lazy when I say it sucks, or is it genuinely a bad idea?

Getting customers to change anything is incredibly hard. It absolutely makes more sense for your company to want them to use a new endpoint so you don't have to deal with the legacy CSV crap, but that is a non-0 amount of effort for the customer and anything greater than 0 effort is like pulling teeth even if the experience would be significantly better for them in the end.

The best you could probably do is create the new endpoint and a process that converts CSV into whatever the format the endpoint takes and then encourage your customers to make the transition while still supporting the old process for many years

BurntCornMuffin
Jan 9, 2009


Shirec posted:

It's amazing how some places really don't agree with this statement. Salaried? Basically you're mine forever now!

...and how few devs have the balls to say: "Well, the contract also says 'at will' so gently caress you" and walks.

Though it's also a commentary on how hosed US employment is.

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



Rocko Bonaparte posted:

When it comes to translating the error messages, the exception itself could just contain the error message instead of having some magic token float around the program until it hits some magic translator. The problem there is that when you add a new error, you have to put some magic number in one file, the translation in another file, possible some other management in other files, and then you get to actually use the error where you intended. This scales horribly and is easy to screw up. However, it's common enough in C, although you can even fake exception handling in there to some extent with what I think is the least-controversial usage of C's goto statement.

It sounds like the 'magic error translator' is actually i18n which is a valid use case for magic number translations on the front-end. Or course, you can send a magic number and an error message in the team's common language just as easily most of the time.

Jose Valasquez posted:

Getting customers to change anything is incredibly hard. It absolutely makes more sense for your company to want them to use a new endpoint so you don't have to deal with the legacy CSV crap, but that is a non-0 amount of effort for the customer and anything greater than 0 effort is like pulling teeth even if the experience would be significantly better for them in the end.

The best you could probably do is create the new endpoint and a process that converts CSV into whatever the format the endpoint takes and then encourage your customers to make the transition while still supporting the old process for many years

Yeah, writing eat_shit-sandwich-dot-csv.exe is incredibly common. Customers actually transitioning to your shiny new endpoint... is not.

Rocko Bonaparte
Mar 12, 2002

Every day is Friday!

Munkeymon posted:

It sounds like the 'magic error translator' is actually i18n which is a valid use case for magic number translations on the front-end. Or course, you can send a magic number and an error message in the team's common language just as easily most of the time.
I'll concede I don't really know the web domain and definitely not the publicly-facing web domain, but I'm wondering if you're taking over/under on Shirec's boss doing it magic error numbers--at least for stages 1-5--due to localization.

Shirec
Jul 29, 2009

How to cock it up, Fig. I

Munkeymon posted:

It sounds like the 'magic error translator' is actually i18n which is a valid use case for magic number translations on the front-end. Or course, you can send a magic number and an error message in the team's common language just as easily most of the time.

Bingo, that's it. We're not allowed to display the messages. Basically I had to take the codes, and add their translations to each separate translation JSON. So one view, for an example, would have error code 1004 - Object failed during creation because of an invalid name. In the next view, that error code would be 1011 (1--- for create, 2---- for get, etc etc). So for each view, I would have to manually go into each API and management class and comb through them and type up what the codes represented, with very little consistency.

When I tried to bring up using only 1001 for just this type of error per management class etc etc, I got shot down very fast.

Rocko Bonaparte posted:

I'll concede I don't really know the web domain and definitely not the publicly-facing web domain, but I'm wondering if you're taking over/under on Shirec's boss doing it magic error numbers--at least for stages 1-5--due to localization.

I do think there is a "magic number" part of this because some of this stuff is supposed to never surface. It's just for us to use in logging or if clients wanted to use it in in accessing our APIs.
I wish I could speak to this more intelligently. I only know it felt really frustrating and that for all the patterns, a lot of quality of life stuff that needed to be considered never was.

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



Shirec posted:

Bingo, that's it. We're not allowed to display the messages. Basically I had to take the codes, and add their translations to each separate translation JSON. So one view, for an example, would have error code 1004 - Object failed during creation because of an invalid name. In the next view, that error code would be 1011 (1--- for create, 2---- for get, etc etc). So for each view, I would have to manually go into each API and management class and comb through them and type up what the codes represented, with very little consistency.

When I tried to bring up using only 1001 for just this type of error per management class etc etc, I got shot down very fast.


I do think there is a "magic number" part of this because some of this stuff is supposed to never surface. It's just for us to use in logging or if clients wanted to use it in in accessing our APIs.
I wish I could speak to this more intelligently. I only know it felt really frustrating and that for all the patterns, a lot of quality of life stuff that needed to be considered never was.

Oh OK so someone reminded him that the UI had to support multiple languages and he got halfway to a minimally sane, maintainable way to do that and decided that was good enough.

There should have been one mapping from error codes to messages that you could even expose a service to. Sounds like there was a mapping per code per service? Yikes

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


https://twitter.com/iamrecruitr/status/984823146573369345

RobertKerans
Aug 25, 2006

There is a heppy lend
Fur, fur aw-a-a-ay.

Pollyanna posted:

We have a situation at work and I don’t know how to explain it in a way that properly shows why it’s stupid........

We have a set of fulfilment providers who send our stuff out from warehouses in various countries, and almost every one has their own separate special way of sending across dispatch confirmation - csv, excel with wired formatting, old excel, excel with multiple sheets, etc. A couple of providers are spot on and give us stuff in the exact format we request and can be automatically processed, the rest are handled by a messy combination of provider-specific Python scripts to parse the reports + a lot of manual fiddling. It's a loving nightmare, and they've shown zero interest in changing their procedures to match our systems.

GDPR has been awesome though, has had some nice side effects: given that they're handling our customer's personal data we now have a great big stick to beat them into line with

Bruegels Fuckbooks
Sep 14, 2004

Now, listen - I know the two of you are very different from each other in a lot of ways, but you have to understand that as far as Grandpa's concerned, you're both pieces of shit! Yeah. I can prove it mathematically.

Munkeymon posted:

It sounds like the 'magic error translator' is actually i18n which is a valid use case for magic number translations on the front-end. Or course, you can send a magic number and an error message in the team's common language just as easily most of the time.

Back in the C++ days when we were doing i18n and needed to stop doing a build for every single language, we made a dll where you'd pass in the 'developer english' string, and it would spit out the string in the locale's language. Worked great. Now it's 2018 and I'm doing web dev and we're doing magic numbers for i18n strings in the client. Even though it's a little more space, using developer english plus a lookup table is much easier than dealing with mickey mouse magic number bullshit imo.

Xik
Mar 10, 2011

Dinosaur Gum

Pollyanna posted:

We have a situation at work and I dont know how to explain it in a way that properly shows why its stupid.

We have many Agents. An Agent can be Expired, Inactive, or Active. Inactive and Active represent their status with some optional feature we have. We get a (really crappy) CSV from a company listing which of their agents are still with them, and if theyre eligible for that optional feature. Our task, which has been in testing for like 2 months now, is to keep our records up to date based on this CSV they send us.

Im of the opinion that we shouldnt be doing this at all and instead we should just give them an endpoint that lets them manage their agents directly on our platform because trying to keep our records in sync with their CSV is a pain in the rear end and has proven to be really touchy, brittle, and unreliable. Am I just being picky/lazy when I say it sucks, or is it genuinely a bad idea?

This is how an organizations external integration layer starts and is such a common scenario that there are enormous proprietary engines for doing this in almost every niche you can think of.

Unless providing your place with accurate agent data is part of their core business and drives revenue in some way, it's probably wishful thinking to think they would even use an api if you stood one up. You're not picky/lazy for wanting this, but business gonna business.....

Munkeymon
Aug 14, 2003

Motherfucker's got an
armor-piercing crowbar! Rigoddamndicu𝜆ous.



Bruegels Fuckbooks posted:

Back in the C++ days when we were doing i18n and needed to stop doing a build for every single language, we made a dll where you'd pass in the 'developer english' string, and it would spit out the string in the locale's language. Worked great. Now it's 2018 and I'm doing web dev and we're doing magic numbers for i18n strings in the client. Even though it's a little more space, using developer english plus a lookup table is much easier than dealing with mickey mouse magic number bullshit imo.

Either way it's a magic value you have to coordinate between layers somehow, and numbers would be more annoying than standardized strings like ERR_BTW_CHR_AND_KBD but I think Shirec is describing a situation where they use numbers that aren't globally unique in their codebase. String matching on the message also breaks down or becomes really annoying if you want to add any contextual information to your error message, which even the dimmest of users can at least be trained to paste into the IT AM BROKE FIX PLX email.

Shirec
Jul 29, 2009

How to cock it up, Fig. I

This is more of a random aside than true dev chat but I am SO loving GLAD I chose NYC over Houston now, and that I moved to Chicago when I could. There's a good chance a lot of rights I currently have could be stripped away in the next year or so. I'm also glad I'm leaving my hell job because I don't know if I could handle the stress of it plus all the national stuff.

I had a really good in person interview yesterday. I don't want to jinx myself by thinking it went well. I only did ok technically, but for a 3 hour interview block, we ended up taking 3 hours and 40 minutes because of how engaged my interviewers were in discussions with me. I also broached their approach to diversity (because gently caress it, I don't want to end up back where I was in the closet) and it seems like they are fully vested on that front. I was blown away by how supportive the atmosphere was and how friendly the team was.

Munkeymon posted:

Either way it's a magic value you have to coordinate between layers somehow, and numbers would be more annoying than standardized strings like ERR_BTW_CHR_AND_KBD but I think Shirec is describing a situation where they use numbers that aren't globally unique in their codebase. String matching on the message also breaks down or becomes really annoying if you want to add any contextual information to your error message, which even the dimmest of users can at least be trained to paste into the IT AM BROKE FIX PLX email.

Thank you for taking the time (you and all the others haha) cause I learned a lot from this conversation! I'm trying to pick apart my current work experience without just letting my dislike of my boss poison concepts in general.

NovemberMike
Dec 28, 2008

Shirec posted:

This is more of a random aside than true dev chat but I am SO loving GLAD I chose NYC over Houston now, and that I moved to Chicago when I could. There's a good chance a lot of rights I currently have could be stripped away in the next year or so. I'm also glad I'm leaving my hell job because I don't know if I could handle the stress of it plus all the national stuff.

I had a really good in person interview yesterday. I don't want to jinx myself by thinking it went well. I only did ok technically, but for a 3 hour interview block, we ended up taking 3 hours and 40 minutes because of how engaged my interviewers were in discussions with me. I also broached their approach to diversity (because gently caress it, I don't want to end up back where I was in the closet) and it seems like they are fully vested on that front. I was blown away by how supportive the atmosphere was and how friendly the team was.


Thank you for taking the time (you and all the others haha) cause I learned a lot from this conversation! I'm trying to pick apart my current work experience without just letting my dislike of my boss poison concepts in general.

Most jobs aren't too bad on that front. My first day the office had a bunch of giant multi-floor flags doing the pride thing and one of the early orientation speakers basically talked about how she's a lesbian and has kids and if anyone wants to make a problem of that they can gently caress off and leave the job.

Shirec
Jul 29, 2009

How to cock it up, Fig. I

Boss is now yelling at my co-workers and not me, I feel bad for them but Im so free. Its not me for once. :toot:

Hes blaming them for all his poor decision making and not pushing back enough. Hes also blaming them for acting like the sky is falling and also not moving fast enough. Hes also putting his future success or failure on them, so lots of guilt.

Im shamelessly eavesdropping. Also getting more annoyed because hes certainly being nicer to them than he was to me.

edit: Oh wow he is insanely guilt tripping them. "I'm trying to make things easier for you for when I'm gone"

Shirec fucked around with this message at 17:49 on Jun 29, 2018

bvj191jgl7bBsqF5m
Apr 16, 2017

Í̝̰ ͓̯̖̫̹̯̤A҉m̺̩͝ ͇̬A̡̮̞̠͚͉̱̫ K̶e͓ǵ.̻̱̪͖̹̟̕
Today is my last day on the job. I'm pretending to edit a handover document that I finished writing up and editing on Tuesday.

qsvui
Aug 23, 2003
some crazy thing

Shirec posted:

Boss is now yelling at my co-workers and not me, I feel bad for them but Im so free. Its not me for once. :toot:

Hes blaming them for all his poor decision making and not pushing back enough. Hes also blaming them for acting like the sky is falling and also not moving fast enough. Hes also putting his future success or failure on them, so lots of guilt.

Im shamelessly eavesdropping. Also getting more annoyed because hes certainly being nicer to them than he was to me.

edit: Oh wow he is insanely guilt tripping them. "I'm trying to make things easier for you for when I'm gone"

is it bad that i don't feel bad for your coworkers?

spiritual bypass
Feb 19, 2008

Grimey Drawer

Shirec posted:

Boss is now yelling at my co-workers and not me

They set the stage for this by not standing up for you

Pollyanna
Mar 5, 2005

Milk's on them.


Hah, gently caress em.

Che Delilas
Nov 23, 2009
FREE TIBET WEED

Pollyanna posted:

Hah, gently caress em.

:emptyquote:


Shirec posted:

edit: Oh wow he is insanely guilt tripping them. "I'm trying to make things easier for you for when I'm gone"

Dude's set himself the easiest task in history.

Jose Valasquez
Apr 8, 2005

Pollyanna posted:

Hah, gently caress em.

:hellyeah:

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

Shirec posted:

"I'm trying to make things easier for you for when I'm gone"

Was that a typo and you meant "when Shirec is gone" or is he leaving?

Slimy Hog
Apr 22, 2008

Volmarias posted:

Was that a typo and you meant "when Shirec is gone" or is he leaving?

Is he threatening suicide?

Shirec
Jul 29, 2009

How to cock it up, Fig. I

Volmarias posted:

Was that a typo and you meant "when Shirec is gone" or is he leaving?

He has a board meeting come up in two weeks and he's freaking out that he's not going to have enough to present, and thus will get fired.

rt4 posted:

They set the stage for this by not standing up for you

Pollyanna posted:

Hah, gently caress em.

Basically. They had to break for lunch cause it was getting heated and now he's locked them in his office with them :allears: A position I'm very familiar with

edit: They've passed the two hour mark now

edit edit: Now they are out of the office but request came down the pipeline and a new customer wants to onboard next week with no flex deadline, and that's my last week. :toot: I get to watch it crash and burn. They are joking about drinking rat poison currently

Shirec fucked around with this message at 21:10 on Jun 29, 2018

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...

Shirec posted:

He has a board meeting come up in two weeks and he's freaking out that he's not going to have enough to present, and thus will get fired.



Basically. They had to break for lunch cause it was getting heated and now he's locked them in his office with them :allears: A position I'm very familiar with

edit: They've passed the two hour mark now

edit edit: Now they are out of the office but request came down the pipeline and a new customer wants to onboard next week with no flex deadline, and that's my last week. :toot: I get to watch it crash and burn. They are joking about drinking rat poison currently

:bisonyes:

bvj191jgl7bBsqF5m
Apr 16, 2017

Í̝̰ ͓̯̖̫̹̯̤A҉m̺̩͝ ͇̬A̡̮̞̠͚͉̱̫ K̶e͓ǵ.̻̱̪͖̹̟̕

Shirec posted:

He has a board meeting come up in two weeks and he's freaking out that he's not going to have enough to present, and thus will get fired.



Basically. They had to break for lunch cause it was getting heated and now he's locked them in his office with them :allears: A position I'm very familiar with

edit: They've passed the two hour mark now

edit edit: Now they are out of the office but request came down the pipeline and a new customer wants to onboard next week with no flex deadline, and that's my last week. :toot: I get to watch it crash and burn. They are joking about drinking rat poison currently


You should politely inform them that rat poison is a powder.

The Fool
Oct 16, 2003


So is Iocane.

bvj191jgl7bBsqF5m
Apr 16, 2017

Í̝̰ ͓̯̖̫̹̯̤A҉m̺̩͝ ͇̬A̡̮̞̠͚͉̱̫ K̶e͓ǵ.̻̱̪͖̹̟̕
My soon to be ex boss is on vacation right now and just called everybody at 2pm on a Friday before a long weekend one after another on their cell phones to make sure everybody was still in the office and wanted everybody to give updates about what we are doing at the moment.

CPColin
Sep 9, 2003

Big ol' smile.
"Well, I'm trying to work, but some rear end in a top hat is calling everybody in the office in turn, so I'm a little distracted at the moment."

Pollyanna
Mar 5, 2005

Milk's on them.


bvj191jgl7bBsqF5m posted:

My soon to be ex boss is on vacation right now and just called everybody at 2pm on a Friday before a long weekend one after another on their cell phones to make sure everybody was still in the office and wanted everybody to give updates about what we are doing at the moment.

Whip cracking motherfucker.

Volguus
Mar 3, 2009

bvj191jgl7bBsqF5m posted:

My soon to be ex boss is on vacation right now and just called everybody at 2pm on a Friday before a long weekend one after another on their cell phones to make sure everybody was still in the office and wanted everybody to give updates about what we are doing at the moment.

Surely you replied: "I am at the beach. You should check it out some time, is quite nice".

Murrah
Mar 22, 2015

My company which is all-remote just had a summit meeting where we flew people in from around the place and I met three people I hadn't met in person before.

The meeting was just long enough to get maximum utility out of meeting everyone before starting to remember the benefits of working remotely and wanting isolation I wonder


We had it at WeWork and none of the whiteboard markers worked at all amongst a few other things. That iced cucumber water though I guess

kitten smoothie
Dec 29, 2001

I love working remote but the trips I do into the office are definitely really draining, there's this pressure to try to pack three months worth of face time into a week.

Then I come home having gained ten pounds because NYC on an expense account is a curse disguised as a blessing

sim
Sep 24, 2003

Are either of your companies hiring? I'm working remotely 2 days a week but would love to go back to full time remote.

Shirec
Jul 29, 2009

How to cock it up, Fig. I

2 hours into work today and nothing to do since boss decided to apparently re-write giant chunks of how the UI is supposed to work over the weekend. I'm not privy to the meetings so I'm just catching up on SA. Sitting here with an iced coffee and relaxing. This is very nice :)

How are y'all this morning?

Murrah posted:

My company which is all-remote just had a summit meeting where we flew people in from around the place and I met three people I hadn't met in person before.

The meeting was just long enough to get maximum utility out of meeting everyone before starting to remember the benefits of working remotely and wanting isolation I wonder


We had it at WeWork and none of the whiteboard markers worked at all amongst a few other things. That iced cucumber water though I guess

kitten smoothie posted:

I love working remote but the trips I do into the office are definitely really draining, there's this pressure to try to pack three months worth of face time into a week.

Then I come home having gained ten pounds because NYC on an expense account is a curse disguised as a blessing

I've always been curious about remote work. My best friend has been remote 100% for three years and loves it, but I think it makes him afraid to ever look for a new job (he's also a finance analyst so less collaborative work besides the 100 million meetings he has a week). Also I like socializing so I think I'd miss that. Is it ever hard to put your heads together on issues or is it more that the office atmosphere needs to support/have tools for that type of mixed work environment?

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Shirec posted:

I've always been curious about remote work. My best friend has been remote 100% for three years and loves it, but I think it makes him afraid to ever look for a new job (he's also a finance analyst so less collaborative work besides the 100 million meetings he has a week). Also I like socializing so I think I'd miss that. Is it ever hard to put your heads together on issues or is it more that the office atmosphere needs to support/have tools for that type of mixed work environment?

I'm mostly remote -- I do consulting, but I'm currently on a long-term engagement with a client over 1000 miles away from me. I go visit them for a few days or a week a couple of times a year.

- It's a huge perk, which is both good and bad. I can't easily find another remote job that pays as well, or pays enough additional to make up the difference in quality-of-life. Luckily I like my job and don't see myself leaving anytime soon, but I'm resigned to the fact that I'm probably going to have to take a significant quality-of-life hit to make the same or more money elsewhere.

It's really impossible to quantify the benefit of not commuting and having minimal oversight. It's at least 2-3 hours of your day that you reclaim -- getting ready, commuting, decompressing after work, all of these things are on top of the 8 hours you're expected to be in the office. I used it to start going to the gym, to learn to play guitar (a little bit, poorly), to do housework, etc.

- I miss socializing with co-workers. We have Slack and everything, but it's not the same. I also have to be very careful to make sure to actually leave the house occasionally, because otherwise stir-craziness / low-grade depression kicks in.

- Communication issues are purely a cultural thing. If you're the only remote work person in a company of 1000 people, it's probably going to suck because they don't have a culture of including remote people. If they have tons of remote people, they probably have things pretty well worked out to make sure remote people are included. I've worked on engagements with both kinds of customers. It's never fun when you hit an issue, need a response, and have to sit there waiting for hours (or days, or weeks...) waiting to get unblocked.

New Yorp New Yorp fucked around with this message at 16:36 on Jul 2, 2018

Adbot
ADBOT LOVES YOU

BaronVonVaderham
Jul 31, 2011

All hail the queen!

Shirec posted:

I've always been curious about remote work. My best friend has been remote 100% for three years and loves it, but I think it makes him afraid to ever look for a new job (he's also a finance analyst so less collaborative work besides the 100 million meetings he has a week). Also I like socializing so I think I'd miss that. Is it ever hard to put your heads together on issues or is it more that the office atmosphere needs to support/have tools for that type of mixed work environment?

I've been doing it for about six years now, minus a brief return to a hellish cubicle environment for 3 months or so. My experience has been pretty varied.

At my last long-term company, it was 100% remote, we didn't even have a hq office. They had numerous problems, but managing remote teams was not one of them. We had Slack open at all times, used google hangouts regularly, and of course nonstop emails and managing tickets and requests via github, but otherwise we all just enjoyed being able to go do our own thing. I think my favorite thing about remote is having that autonomy, and the prevailing attitude that works best is, "As long as you're meeting your deadlines and getting your poo poo done and we can get a hold of you with questions or emergencies, who cares when you're doing it or any of the specifics of time."

Contrast this with the last job I quit, which was also fully remote (for development anyway, sales and stuff were at HQ in Miami): There were very strict "office hours" where you were expected to be at your desk and be able to hop into meetings with zero notice. There were arbitrarily imposed deadlines by business instead of being set by devs. There were non-loving-stop meetings about every minor thing. Every meme about sitting through an hour meeting that could have been a 2 line email hit home hard.

Then they got bought out by a massive parent company which had never had remote employees. I took this as my cue to leave before I even saw how little interest they had in supporting us. There was very little effort to include us, and after a while they basically had all of the Python devs remaining remote and segregated into our own isolated team, while the non-Python devs were all given relocation packages to move to Atlanta to be at HQ. I had no interest in moving to Atlanta even if they offered, but that just confirmed my suspicions.....sure enough, almost 6 months to the day after the buyout, every Python dev came to work after a holiday weekend and their morning scrum was taken over by HR and it was announced that they were all terminated effective immediately.

My first programming job ever was remote, and it was a poo poo show. It was a tiny startup, and the owner had no boundaries. He bought me an old-school pager (apparently those still exist) because I would turn off my phone ringer so I could sleep, because he would honest to god text me nonstop at all hours. I tried introducing a scale for "is this actually an emergency or not", but he just labeled everything, including requests for style tweaks, as the highest emergency priority. I go to competitive MTG events, and I had to carry my laptop with me and would be expected to forfeit my round and/or drop from the event if he called with an "emergency", so I stopped going to those altogether.

I was actually secretly relieved when he replaced me without warning. I just woke up one day and was locked out of everything; turns out the non-compete his old lead dev signed expired a year to the day after his old contract ended (which finished with training me), so he rehired him that day and dumped me. I couldn't justify quitting no matter how miserable I was, so after I stabilized in a new job I was so glad for the way out of that mess.

My current job, which I thankfully found 3 months before that "surprise" layoff, is with a company that's somewhat new to remote, but is doing a decent job at it. They had some offshore teams, but hadn't really done remote individuals in the states (the remote teams are all in single office locations, just not at HQ, in places like Belarus or India).

Part of it is on you as the worker, though, to make it all happen. I treat working from home as the biggest job perk I could possibly get, and I work accordingly to make sure I never lose that. I make sure I communicate constantly almost to the point of being annoying about it, and I try to periodically check in with my team to make sure I'm not either overdoing it or ghosting them. It's important to get very clear expectations laid out, and to make sure you are doing what they want you to be doing. I've run into trouble where they change business priorities and don't bother to tell me that what I'm working on is no longer a priority.

I do have to travel to HQ periodically for absolutely no reason (I have to go next week actually :( ). It's dumb, they block any private devices on their wifi, so I am forced to use the mac they gave me against my will. Add to that not having my usual multi-monitor setup, etc. and my productivity plummets before you even factor in travel time and shifting time zones. Seems like a lot of money for very little benefit.

Don't get me wrong, it IS nice to see real human beings now and then, but the frequency is way too high and I go there for no specific reasons, I just continue my normal work. The first remote job I mentioned just had us travel twice a year: once for our organization's annual conference (this was pointless, they had IT staffing registration booths when it would cost 1/10th of our salary + airfare + hotel + food to hire a few temps), and once for the annual staff retreat. The latter was a nice idea in theory, but in practice 90% of our company was crunchy vegans, so we literally stayed at like a quaker compound in the woods somewhere that only had air conditioning in the gender-segregated sleeping barracks that had all of one outlet to let you charge your phone (and no wifi). It was nice to see everyone and hang out outside of the context of doing work (drunken karaoke was great), but I feel like that's a time to splurge and reward your employees with nice things, not to stay in spartan barracks eating twigs and leaves for a week.

Anyway, that's my incoherent rant about my experience. Overall it's amazing. When I lost the job with the boss with no boundaries, I worked for GFS for a few months and returning to a cubicle in a corporate environment was a major shock to my system. My girlfriend noted the contrast in my morale and energy level at the time; it was night and day. I probably work more hours remote, but I still have more time for personal projects and just relaxing because I'm not commuting, and I'm also not forcing myself to be up at the rear end-crack of dawn to conform to other people's ideas of what a sleep schedule is. I have narcolepsy, so this was a MAJOR factor; I'd come home from work at 4 (because of course they can't even do 9-5, it had to be 8-4) and just nap for 2 hours before I could function again. I had all of maybe 3 hours on weekdays to fit in the rest of my life, whereas today I'd say that's closer to 8.

But in closing, I am obligated to mention the absolute best perk of remote: Pants.....specifically, not having to wear them.

Also cats. It's such a nice way to recharge to walk away from a frustrating meeting and go play with our new kitten for a while and decompress.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply