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
Paolomania
Apr 26, 2006

Vulture Culture posted:

There have been Web Workers implementations in Node for literally seven years

Aren't those spawned as subprocesses?

Adbot
ADBOT LOVES YOU

Paolomania
Apr 26, 2006

I can see it now: eventually these things will be run using web IDEs, run against unit tests, and include greenfield, debugging and refactoring sections.

Paolomania
Apr 26, 2006

ultrafilter posted:

A woman who used to work for Uber described her time there, and it wasn't so great:


That's the most ridiculous story she tells, but it's far from the worst.

gently caress Uber forever.

Paolomania
Apr 26, 2006

Pollyanna posted:

There's no way in hell I'm good enough for Google. My impression is that people who work at Google do hardcore CS algo work or are really good at server maintenance or C optimizations. That's something I don't have the education or experience for. I'm talking out of my rear end, yeah, but they're a whole 'nother level.

All most of us really do is take data in one format and copy it into data in another format ... and then get that code through productionization and security review which really is just like some form of CS hazing.

Paolomania
Apr 26, 2006

VOTE YES ON 69 posted:

Nah. DevOps is a pretty common term.

So is "devops" the new "ops"?

Paolomania
Apr 26, 2006

Does bazel have any traction out in the real world?

Paolomania
Apr 26, 2006

Yeah I thought "cloud services" was pretty much just each company productizing the infrastructure they had already developed for their own services.

Paolomania fucked around with this message at 02:29 on Apr 30, 2017

Paolomania
Apr 26, 2006

Pollyanna posted:

I remember an interviewer getting all huffy when I responded to a string manipulation question using core Ruby functions, and that left an impression on me when I was first trying to get a job. If I was interviewing someone, I wouldn't fault them for going for the core library implementation first.

The proper response by the interviewer should have been "Great! Now how would you implement that library function?"

Paolomania
Apr 26, 2006

Ploft-shell crab posted:

I think copy paste > abstraction can be pretty true & I like this blog post talking about why(tef also has a blog post on this).

https://www.sandimetz.com/blog/2016/1/20/the-wrong-abstraction

Obviously the rest of the stuff looks pretty weird though

The condition described is exactly the condition that inheritance and dynamic dispatch was invented to solve. The error here is not in the creation of the abstraction, but in the way case-handling was implemented. Of course there is a compelling argument that copy-paste is simpler to understand and implement and thus less error prone in the long run than the "right" object-oriented abstraction which may end up complicating things by introducing secondary abstractions such as factories or double-dispatch - however I must admit that he is *technically* correct that copy-paste is better than the worst option of the three - i.e. a poorly implemented abstraction with a tangle of special case control flow.

Paolomania
Apr 26, 2006

necrobobsledder posted:

Defense contractors, man. That's all I can say.
Work at a defense contractor got me a contact that lead to a gig at MIT that got Google recruiters in my mailbox; so ... they serve their purpose.

Paolomania
Apr 26, 2006

My first job out of non-prestige grad school was just such a job at a medium size company. I hopped after one year and got a nice raise, then continued to hop every 1-2 years until I was making what I was worth.

Paolomania
Apr 26, 2006


I feel like there are certain development checkmarks that you should try to acquire, not in mastery of specific technologies, but in having working knowledge of some technology that is a solution to a common aspect of development. I.e. have working knowledge of some tech in each of:
  • popular multi-paradigm language & its standard libs
  • database / persistence layer
  • concurrency / threading lib
  • RPC / message bus
  • version control system
  • build automation / continuous integration system
I can't make any recommendations as I've been in the big corporate mothership for too long to know what everyone is using nowadays, but make sure you have at least one thing in each of the above. Also maybe acquire some extra stuff depending on your field of interest:
  • Model View Controller framework
  • distributed computing framework
  • numerical /scientific computing lib
  • High Performance Computing (GPU accelerated nowadays?)
  • embedded programming / real-time OS

Paolomania
Apr 26, 2006

Che Delilas posted:

Wonder what they'd call "Jacket but No Tie" and "Flip-flops with Socks"

Googbeard.

Paolomania
Apr 26, 2006

Hughlander posted:

I really hate to say it Dr but your experiences are so a-typical in the 20 years I've been in the tech industry that they really don't relate to pretty much anyone. I've been a consultant, at start ups, at mega corps, I've never encountered an employee with your history. While your journey is deeply personal and meaningful to you, it just does not have relevance in the vast majority of conversations I feel.

Ever work in games?

Paolomania
Apr 26, 2006

Hughlander posted:

17 or so of those 20 years.

Then your experience in the industry is quite the opposite of mine where management was full of nepotism and old boys clubs and people in the trenches got persistently lowballed on pay and ground up trying to deliver overpromised features on mismanaged projects.

This is of course a limited data point, but more to say that such things are not outside the realm of possible subjective professional experience.

Paolomania
Apr 26, 2006

mrmcd posted:

So should I be the 5th Google BigTechCo person in a row to post about how it's actually filled with very good if mortal engineers?

Just learn CS fundamentals well, practice for interviews, make $$$, get fed food. Don't spend all your time being a memegen shitposting misc lord.

:v:

porque no los dos?

Paolomania
Apr 26, 2006

TheCog posted:

I'm probably the worst person to be giving advice in this thread, but I have dealt with a lot of nerds, so I'm going to give my two cents and people can yell at me if i'm out of line.

Most programers i know are afraid of confrontation, and that is the reason why change can't happen. They'd rather not deal with the effort and awkwardness and uncomfortablness of it, even knowing that on the other side there are greener pastures. loving someone over though HR is a form of confrontation, but it makes people deeply uncomfortable, which leads to avoidance, which leads to a toxic boss and your team collapsing. If you believe working with an awesome lead who's really trying to be worth the discomfort, and you think HR is actually likely to help, then you absolutely should do it, no matter how uncomfortable it makes you in the moment. The reason is simple: if your HR is good, there's no way it leads back to you, so your worst case scenario is nothing changes and your boss is non the wiser, the best case scenario is you get your awesome tech lead and a good team on a project you care about.

Beyond that, looking for jobs is kind of poo poo, and I highly suggest trying to fix things before trying to bail. There's always time to bail.

Wasn't there some whole thing around the toxic culture at Uber where HR had for years been getting complaints logged against certain people but they were untouchable due to being "high performers" or something to that effect? This kind of precedent doesn't seem like a good indicator for using the HR channel.

Paolomania
Apr 26, 2006

Skandranon posted:

I care about the things I've done, and the people left behind to pick up the pieces. Somewhat.

Consider that you may be able to throw others a lifeline from your new boat.

Paolomania
Apr 26, 2006

Goal: go for promo until I get promo.

Paolomania
Apr 26, 2006

Mods rename thread "Junior Dev griping hour".

Paolomania
Apr 26, 2006

Love Stole the Day posted:

Naturally, this only feeds into that Gen Y curse mentioned in the OP of this thread (i.e. no job b/c no experience, no experience b/c no job).

I think you are thinking about the OP of the newbie thread. This OP is about bitter old farts.

Paolomania
Apr 26, 2006

mrmcd posted:

Also since we're on the topic of leadership: What is the best way to trick another team into taking ownership of your ugly orphan childe convince them a module more closely synergizes with their technical mandate?

Possible “Best” solutions:
- completely overhaul perf
- wait for a reorg to make the problem go away
- pass it off as a great 20% project until some other team’s fingerprints are all over the code

Paolomania
Apr 26, 2006

Staying current in tech is always an oldie concern and to that end the stackoverflow dev survey came out today: https://insights.stackoverflow.com/survey/2018/#technology

How do people feel about this measure of hot tech? I had no idea that JavaScript and Node.js were actually that popular. Unsurprising that MySQL is still undisputed king of databases.

Paolomania
Apr 26, 2006

85% say they do Agile ... but do they?

Paolomania
Apr 26, 2006

Schneider Heim posted:

It's supposed to be an annual performance increase, though?

Every job I've had prior to big G did this, with annual bonus more of a performance reward and significant pay bumps only coming on promotion.

Paolomania
Apr 26, 2006

Tezzeract posted:

This is great - sounds like you guys have it figured out. Any blogs/resources about this/scaling into big data and choosing the right org structure, SLAs? Or is this one of those cases where you just have to be on the grapevine.

I'd at least skim the SRE book.

Paolomania
Apr 26, 2006

Whoop. Got promo. Mostly on the strength of my soft skills, as my manager advised I focus on leadership track rather than technical track in the future.

Paolomania
Apr 26, 2006

LOL. Language wars and OS wars in the oldie thread. We are better than this.

Paolomania
Apr 26, 2006

Doctor w-rw-rw- posted:

Who called the fun police? Arguing about the merits of things is fun, can be useful, and is a time honored tradition of nerds.

It gets old after a few decades, don't you think?

Paolomania
Apr 26, 2006

Doctor w-rw-rw- posted:

Only for people who don’t find new technology fun.

Technology changes too fast for he answers to stay the same but repeats too often for old wisdom to consistently lack relevance.

I meant the arguing, not the tech. Discovering new tech is fun and good. Zealous arguments are just tiresome.

Paolomania
Apr 26, 2006

Can confirm, from highschool through college and gradschool taking data structures and algorithms from those classic texts (you know the ones, Leiserson et al, Russel & Norvig) and never covered tries until I did interview prep a few years ago (CtCI) and what do you know, one of my Big G interview questions (that I aced) was tries. I hate that their canonical pronunciation is phonetic collision with tree and refuse to pronounce it as anything but 'try'.

Paolomania
Apr 26, 2006

LOL I looked up tries in my old copy of Intro to Algorithms and it redirects to “radix trees” which are a single problem at the end of the binary search tree chapter.

Paolomania
Apr 26, 2006

One thing I have not heard mention is pedigree. Sometimes having the right company or school on your resume makes all the difference. I went to decent schools for undergrad and masters and got no interest from the top tech companies for years. Then I did a short stint as research staff at MIT and suddenly all the recruiters came knocking. I didn’t even work on anything all that impressive. It was like I was a made man. *jaded intensifies*

Paolomania
Apr 26, 2006

Shirec posted:

Perhaps I may have been talking out of my rear end then! I would swear I saw something recently that said Google's diversity numbers showed they were having trouble with retention, but I can't seem to find it. I'll defer to your expertise. It's good to know that, even though it could be better, it's still good at one of the dream companies. Apologies for my misrepresentation

It says something that Google publishes diversity numbers and that internal mailing lists like yes@ exist. The first step to solving a problem is admitting that it exists via first hand accounts and other measurements. The second step is to make yourself accountable. By both gathering metrics and publishing some part of the demographics publicly, Google is saying "yes there is a problem and we want to be accountable". Measuring and publicizing the truth - even if it is disappointing - goes vastly further on the road to progress than any amount of corporate sloganeering and feel-good messaging.

Paolomania
Apr 26, 2006

rt4 posted:

You might have a ruff time selecting the right candidates with that method

There is nothing wrong with having a paws in your career.

Paolomania
Apr 26, 2006

asur posted:

At six year experience you should be targeting senior positions and 90k seems on the low end for any senior role.

*Maybe* if they are six years of quality work on good projects with appropriate technical complexity and good mentoring but LOL at anyone but the most fortunate lucking into that.

Paolomania
Apr 26, 2006

minato posted:

There's a Linus talk from 2007 @ Google where he's simultaneously self-deprecating ("I'm a bad speaker! My slides are bad!") and super :smug: ("You're all dumbasses for not using Git"). As I recall, the audience is pretty hostile by the end.
https://www.youtube.com/watch?v=4XpnKHJAok8

Having been at big G for a few years I have to say I've become a fan of the monolithic repo. Keeping changes small, incremental, and close to mainline makes it so much easier not only to merge but also for code reviews. That in combination with reliable and ubiquitous network access and a repo that can take a hundred thousand developers hammering on it without any down time and most of the need for git's branch sophistication and distributed workflows goes away.

Paolomania
Apr 26, 2006

Doom Mathematic posted:

Is there an advantage to doing this with a monorepo, though? We do all of the things you mentioned and receive all of the benefits you mentioned, but we don't have a monorepo, we have a bunch of small repos. in a single GHE instance.

Aside from the dependency versioning issues of multiple small repos mentioned upthread, with this kind of a workflow you are not really leveraging all of the distributed hotness that makes git interesting. Git is hands down superior for distributed teams that are only in infrequent contact with upstream and with eachother.

Paolomania
Apr 26, 2006

New Yorp New Yorp posted:

Code coverage does not guarantee that code is bug-free or well-tested, just that someone has attempted to test it. Code coverage requirements are just asking to be gamed.

Coverage may not be perfect but it is leagues better then no coverage. A test that exists, even if it is wrong, is a starting point for a fix when a bug is found. Coverage also tells you which error cases you are not exercising.

Adbot
ADBOT LOVES YOU

Paolomania
Apr 26, 2006

Idiotic obsession with high coverage metrics doesn't make coverage bad. My team has an 80% coverage goal (no check in enforcement) and that is easy enough to hit with reasonable unit testing. I have personally found it useful when looking at some graphical lcov output and realizing that an error we thought was covered was actually not covered because the unit test was hitting a similar but different error condition.

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