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
Pollyanna
Mar 5, 2005

Milk's on them.


I guess I should explain myself. The front-end heavy job I'm working right now is a project that's been marred by questionable tech decisions, poor management, and all sorts of inter-team fighting and organizational insanity. I don't hate front end per se, I hate annoying poo poo that's common to all places and fields with questionable development practices. It's not fair to attribute that all only to front-end dev, but I still certainly haven't enjoyed it as much as I do back-end, and I still need to get experience in things like mobile and embedded, so I guess it's growing pains more than anything.

My coworker and I are dealing with a death march of a project and her utter hate of front end is rubbing off on me, I guess. On the bright side, this job is probably gonna end soon ᕕ( ᐛ )ᕗ

Adbot
ADBOT LOVES YOU

RICHUNCLEPENNYBAGS
Dec 21, 2010
You're allowed to hate working in JavaScript. Lots of people do.

lifg
Dec 4, 2000
<this tag left blank>
Muldoon
It's fun to talk about JavaScript when interviewing at web dev shops.

Half the programmers are like, "Our frontend was written in <two year old framework> but we finally convinced our boss to let us rewrite it in <one year old framework>!" The other half are like, "We're using.... something <eyes glaze over>. I don't care if you don't know it."

biceps crimes
Apr 12, 2008


Thanks everyone

vonnegutt posted:

You might want to try to pick nonresponsive's brain and see if he's experienced similar - I could see burnout doing that to a person.

He's friendly enough on a personal level but is completely avoidant about our situation at work. He's less willing to tow the line and participates minimally.
My boss has shared with me (without solicitation/prompting from me) that the dev lead offers him critical feedback in 1x1s, and that he has expressed concern about the praise our boss heaps on me openly. And I agree. Our boss' open praise of me pits the rest of the team against me and is not an effective motivator.

Doctor w-rw-rw- posted:

Apply to Facebook? You sound like the kind of person who could thrive here, and our dev track explicitly does not eventually require a transition into management.
Thanks! Unfortunately I'm not in the bay area. It does look like they're trying to grow their footprint in other markets, but I haven't heard the greatest things about working in satellite offices for big tech companies. I'll definitely look into it though.

fantastic in plastic posted:

Find something else and leave. You're dealing with a passive-aggressive person; he won't fire you but he also won't fix the situation. The only way to "solve" it in any conclusive way is to persuade your skip-level to fire him and replace him with you, and it sounds like you don't want to go down that road.

Networking is a good idea, especially if you're a good talker and don't shy away from conversation. (This can also be a way to discover mentors, even outside of the professional/coworker relationship. I've gotten amazing advice, information literally worth tens of thousands of dollars, for the price of a cup of coffee or a meal.) You might want to look into consulting/contracting -- that can be a good way to leverage good communication skills as well as technical ones.
I'm not experienced enough to take my boss' role. He has many responsibilities outside of managing the team, which is part of the issue. And I believe my skip level is complicit in my boss' actions. Even if they created another role under him to manage the team, that's not what I want.
I'm able to communicate relatively well, but I am introverted and value my alone time. Which doesn't help in being trapped in unwanted roles. I do some volunteering regularly (not tech related) but may need to scale back that commitment to focus on course correcting my career.

Che Delilas posted:

As for avoiding the situation again, well, it's a numbers game and you've had bad luck a couple times in a row, is all. The best you can really do is take what you hate about your current and last job, and try really hard to find hints of the same nonsense in future employers during interviews. Not easy. But that's one of the reasons interview advice always includes "ask questions." Questions about the last time someone got promoted or took a vacation, questions about their process and tools, questions about their work environment. If they have products, find out about them (usually research on your own time is the best here, but a deeper question or two to the interviewers won't hurt).

Try and read the mood of the current developers; do they seem content or happy? Is there any laughter? Try and differentiate between concentration and unhappiness. If you can talk 1-on-1 with an actual dev, ask those questions like, "what's the best part of working here?" and "what's one thing you dislike about working here?" Again you're looking to read between the lines here more than take what they say at face value.
I definitely need to do this in my upcoming job hunt. I think the main pitfall was being blinded by the salary. It just isn't worth it to me at this point though, and I would be willing to take a salary more in line with my experience in order to get in with a large technical organization with a good engineering culture.

I suppose my next course of action is to brush up on my interviewing skills, start applying and putting out feelers, and maybe even go to some meet-ups. I do feel opportunistic appearing at meet-ups only when I'm job hunting, which is a habit I should probably permanently change.

RandomBlue
Dec 30, 2012

hay guys!


Biscuit Hider

RICHUNCLEPENNYBAGS posted:

You're allowed to hate working in JavaScript. Lots of people do.

I worry about people that don't. I wonder, is it because they've never worked in anything that wasn't a horrible pile of poo poo language with minimal functionality cobbled together with duct-tape and string? The only reason anyone used JavaScript, for the longest time, was because you really had no other choice for maximum compatibility in the browser.

But then node.js came around... and... I don't... :suicide:

ToxicSlurpee
Nov 5, 2003

-=SEND HELP=-


Pillbug

RandomBlue posted:

I worry about people that don't. I wonder, is it because they've never worked in anything that wasn't a horrible pile of poo poo language with minimal functionality cobbled together with duct-tape and string? The only reason anyone used JavaScript, for the longest time, was because you really had no other choice for maximum compatibility in the browser.

But then node.js came around... and... I don't... :suicide:

My first thought when I heard about Node was "why would anybody want that?" I couldn't help myself and said that out loud and not quietly. It wasn't yelling really but just a confused "wait what the hell?" kind of moment. I've also had to use ActionScript for a few things over the years and...no. Just...just no. loving no. JavaScript is tolerable for web pages but even then just barely and largely because what else are you going to use? I have to put up with it at work but thankfully are back end isn't Node or anything JavaScript at all. Process what I need there, send it to the page, only do JavaScript when I have to.

And yeah...people that actually like JavaScript are so confusing.

Ralith
Jan 12, 2011

I see a ship in the harbor
I can and shall obey
But if it wasn't for your misfortune
I'd be a heavenly person today

RICHUNCLEPENNYBAGS posted:

I have seen a fair number of internal desktop apps where they literally just have the client have unrestricted access to the database and control everything through software, which is obviously a flawed design but if you want to do it the right way you end up needing to build a Web service and by the time you're doing that...

e: For instance my last company had a custom application for performance reviews (for some loving reason) and it worked exactly this way so if you had a bit of knowledge and were curious you could pull up anyone's performance review.
Whether a networked system has proper authorization mechanisms is totally orthogonal to whether there's any web technology involved at all. Good thing, too; that stuff is hard enough to avoid as it is.

Sometimes it feels like people have forgotten that the internet is capable of doing things other than shuffling JSON over HTTP :(

redleader
Aug 18, 2005

Engage according to operational parameters

lifg posted:

It's fun to talk about JavaScript when interviewing at web dev shops.

Half the programmers are like, "Our frontend was written in <two year old framework> but we finally convinced our boss to let us rewrite it in <one year old framework>!" The other half are like, "We're using.... something <eyes glaze over>. I don't care if you don't know it."

I'm not sure which is a worse signal tbh

Jaded Burnout
Jul 10, 2004


Ralith posted:

Sometimes it feels like people have forgotten that the internet is capable of doing things other than shuffling JSON over HTTP :(

Yeah, it can also do XML.

RICHUNCLEPENNYBAGS
Dec 21, 2010

Ralith posted:

Whether a networked system has proper authorization mechanisms is totally orthogonal to whether there's any web technology involved at all. Good thing, too; that stuff is hard enough to avoid as it is.

Sometimes it feels like people have forgotten that the internet is capable of doing things other than shuffling JSON over HTTP :(

OK. You need some kind of custom service and REST or SOAP is the most obvious choice.

FlapYoJacks
Feb 12, 2009
Probation
Can't post for 3 hours!

RICHUNCLEPENNYBAGS posted:

OK. You need some kind of custom service and REST or SOAP is the most obvious choice.

How about never mentioning SOAP again? You just triggered me! :mad:

FlapYoJacks fucked around with this message at 14:51 on Apr 16, 2017

Jaded Burnout
Jul 10, 2004


RICHUNCLEPENNYBAGS posted:

OK. You need some kind of custom service and REST or SOAP is the most obvious choice.

https://www.postgresql.org/docs/9.5/static/ddl-rowsecurity.html

RICHUNCLEPENNYBAGS
Dec 21, 2010

I realize this is possible but IMO it's a scheme only a DBA could love.

Doctor w-rw-rw-
Jun 24, 2008

RICHUNCLEPENNYBAGS posted:

I realize this is possible but IMO it's a scheme only a DBA could love.

That's not true. I'm sure lawyers and compliance auditors love it too.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
So my 1 on 1 with my manager (lmao shockingly) got moved to tomorrow. Trying to articulate my thoughts to someone earlier I realized the issue is that there are 3 project managers devoting about 25% of their work time, or less, to this specific project but all want to have almost a 100% say in nearly every decision. Two are more or less willing to budge after lots of bickering and back and forth but one is absolutely not willing to compromise anywhere. Is this.. normal? We have a VP of engineering from our small, acquired company, a VP of Data from our parent company, and an "architect" who all want to make design decisions, technology decisions, etc. and it leads to very little getting done except redundant talks, code reviews, and lots of downtime.

To me this doesn't seem like something I have control over and it's not even worth saying anything to my manager, sucking it up, and looking at the 6 month mark.

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


Why wait?

necrobobsledder
Mar 21, 2005
Lay down your soul to the gods rock 'n roll
Nap Ghost
Most corporate jobs suck. You're lucky enough if you get to work with people you actually like let alone have decent management as well as decently competent coworkers - most people have none of those things. In fact, the only places I've worked in or with that had all of these qualities are exactly the ones that exited quickly and turned into not so great places to work within a year because mediocrity is far more contagious than excellence in the business world. One of the worst times to join a team is honestly within about the 12 month mark after an acquisition unless you really thrive on chaos and completely misaligned leadership and corporate politics.

Chalk it up as a valuable lesson you've learned first-hand, salvage what you can from the technical skills learned, and find a better home where your skills are better leveraged as well as you'll have opportunities for growth. You can do what I did and spend a year or so messing around with random technologies to put on Github or whatnot because you're too burned out to even interview and put in minimum effort to keep your job.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
^^^ That's exactly what I've been thinking about doing. I'll post a more elaborate response to this after my meeting tomorrow but working 7 hours a day or less, from home one to two times a week, and contributing to something I care about (thinking about seeing how I can contribute to ElasticSearch - I've used it a lot and it's apparently got a decent community) while collecting a paycheck because I have no desire to interview for at least another 6 months sounds great.

I'm just trying to see what I can do aside from bad management etc. The issue definitely isn't my skill set or anything, I've got more experience with the tech we use than two of the Senior engineers, and I've ramped up very quickly it's just a managerial nightmare.

Iverron
May 13, 2012

I've been practicing Resume Driven Development and not giving a poo poo for 3 months now, but that's still really difficult to do until you have an offer in hand from somewhere else.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
You can only get so far (I feel like) as a mid-level engineer with nobody really giving any sort of mentorship. I don't even give a poo poo if you're gonna give me literally no spec or requirements, I'll gather them myself if I have the autonomy to make technical decisions after doing such. But this mess of no spec, no product team, and half involved but fully controlling management isn't working for anyone and it's baffling that they don't see that.

RICHUNCLEPENNYBAGS
Dec 21, 2010

Good Will Hrunting posted:

You can only get so far (I feel like) as a mid-level engineer with nobody really giving any sort of mentorship. I don't even give a poo poo if you're gonna give me literally no spec or requirements, I'll gather them myself if I have the autonomy to make technical decisions after doing such. But this mess of no spec, no product team, and half involved but fully controlling management isn't working for anyone and it's baffling that they don't see that.

I dunno, being thrown to the wolves sucks but it builds its own sort of skills.

Iverron
May 13, 2012

The last time I wasn't thrown to the wolves was as an intern a decade ago and the mentor there was a Sys Admin. Not saying that's the best way to go about it, it's just the norm?

Most of the people I'd consider mentors nowadays I've either never met in real life or only by way of attending their conference talks. Hell the last guy I actually learned anything from locally left 6 months ago.

RICHUNCLEPENNYBAGS
Dec 21, 2010
A few months into my job the guy who was assigned to be my mentor was telling me some story and casually asked me if I was assigned a mentor when I started working there.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
I'm not talking about people who are going to hold my hand at every step of the way, I'm talking about someone who will review my code in a reasonable amount of time after completion (waiting over 2 weeks to wrap up my first PR here..) and give me some semblance of guidance about how to do things better if need be or a "good job tackling this, I like this design decision" type feedback as opposed to like, the most trivial nitpicky bullshit.

Is this asking too much? That seems to be my biggest question mark in my first two engineering jobs. Am I expecting too much from managers and senior engineers? I don't know everything, and I'm working in a new language on a project that requires taking advantage of a lot of more of the features than I had previously used the language for and I want to make sure I'm doing things properly and not teaching myself improperly. On a similar note: maybe I'm expecting too much from product/BI teams and nobody gets a good spec ever?

Hughlander
May 11, 2005

Good Will Hrunting posted:

I'm not talking about people who are going to hold my hand at every step of the way, I'm talking about someone who will review my code in a reasonable amount of time after completion (waiting over 2 weeks to wrap up my first PR here..) and give me some semblance of guidance about how to do things better if need be or a "good job tackling this, I like this design decision" type feedback as opposed to like, the most trivial nitpicky bullshit.

Is this asking too much? That seems to be my biggest question mark in my first two engineering jobs. Am I expecting too much from managers and senior engineers? I don't know everything, and I'm working in a new language on a project that requires taking advantage of a lot of more of the features than I had previously used the language for and I want to make sure I'm doing things properly and not teaching myself improperly. On a similar note: maybe I'm expecting too much from product/BI teams and nobody gets a good spec ever?

Part of what you're asking also is just general onboarding. How is the process supposed to work? Is there a culturally defined max time for pr comments? One team here has a 24 hour turn around for PRs. If I open it this morning I'm going to merge it tomorrow morning and you have that time to respond.

Is there the expectation to use this utility library in this case? Another place I was at had this asinine Java functional library built on Guava. You were expected to play code golf during reviews until it was as functional as possible. First 4 months or so that was a lot of time in Code reviews.

What's the deployment process and how does it get to internal/external customers? Yet another place had a strong desire that the first day on the job a new engineer would have code running on production by the end of the day. And they built their onboarding process around supporting that.

So think of it that way maybe, it's not a mentor but after 6 months you just haven't really been onboarded.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.

Hughlander posted:

Part of what you're asking also is just general onboarding. How is the process supposed to work? Is there a culturally defined max time for pr comments? One team here has a 24 hour turn around for PRs. If I open it this morning I'm going to merge it tomorrow morning and you have that time to respond.

My on-boarding was 2 days of sitting with the DevOps guy going over how existing systems work, which is not going to be how our pipeline works at all. Their deploy process and everything is being completely revamped (maybe? it's still WIP so nobody knows for sure if it'll go that way or get scrapped) and another week of "read these 400 page books about the frameworks we want to use".

Hughlander posted:

What's the deployment process and how does it get to internal/external customers? Yet another place had a strong desire that the first day on the job a new engineer would have code running on production by the end of the day. And they built their onboarding process around supporting that.

So think of it that way maybe, it's not a mentor but after 6 months you just haven't really been onboarded.

There is no deployment process yet because it's a "new" project and nobody on management is making concrete decisions about how to do things. We're not even close to production because we're migrating some Kafka Scala classes used for Spark Streaming to our own codebase so we can use them with our app. Mind you, only 1 engineer is working on this and it's taking weeks while the rest of us work on small incremental things that we can't even get PRs done for. When us engineers try to suggest something, management frequently refutes it or gets into an argument about it and no concrete decision is made because there's legit 0 autonomy.

Honestly if I was tasked to build this pipeline entirely myself, I could have been nearly done with it in the time I've been here. StackOverflow would have been better support for the 3 roadblocks I hit, I would have found actual solutions instead of trying the poo poo our managers suggested that didn't work and I'm sure it wouldn't have been perfect, but I easily could have had a MVP for a few of the calculations we're doing up and running, in production, with monitoring.

Good Will Hrunting fucked around with this message at 15:30 on Apr 17, 2017

Munkeymon
Aug 14, 2003

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



Ralith posted:

Whether a networked system has proper authorization mechanisms is totally orthogonal to whether there's any web technology involved at all. Good thing, too; that stuff is hard enough to avoid as it is.

Point being that with a web app you have to put a service between the DB and the UI but with a desktop app you're lucky if the guys who wrote it weren't lazy and just said gently caress it and mashed the whole thing together with the DB password in the executable like with Super Meat Boy.

Mniot
May 22, 2003
Not the one you know

Good Will Hrunting posted:

give me some semblance of guidance about how to do things better if need be or a "good job tackling this, I like this design decision" type feedback as opposed to like, the most trivial nitpicky bullshit.

The rest of the stuff you're posting makes it clear that your office has bad processes and it's not just a problem with you, but looking at this one request in isolation I would not expect you to get what you want.

When I've done and had code reviews as part of a smooth-running dev team, it is all trivial nitpicky bullshit. I've got a recent PR that was quite large here, so let's see what the reviewers wrote:

  • remove spaces here
  • use a module attribute for this number
  • spelling fix for a comment
  • spelling fix for a comment
  • a slightly different function call so things look more consistent
  • use a module attribute for this number
  • use a module attribute for this number
  • there's already a function over here that can do this work
  • add some parentheses here
  • pass all the arguments to the initializer instead of initializing in multiple calls

You shouldn't be reviewing design decisions at code review, because those need to be made before you start coding. If you are reviewing them it's not "good job" it's "holy gently caress why didn't you stop and talk to the group instead of making this terrible design decision by yourself?" A very junior dev will need some hand-holding through some basic mistakes like "ok see where you've got if-statements nested 8 levels deep? That's really hard to read, so let's see if we can rewrite that together so that it's not so bad."

Other than that, your code should try to look just like all the other code in the project. Most devs I've worked with are great at making that happen at the level of functions and modules, so the review is mostly to help enforce consistency between developers at the granularity of individual lines.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.

Mniot posted:

You shouldn't be reviewing design decisions at code review, because those need to be made before you start coding. If you are reviewing them it's not "good job" it's "holy gently caress why didn't you stop and talk to the group instead of making this terrible design decision by yourself?" A very junior dev will need some hand-holding through some basic mistakes like "ok see where you've got if-statements nested 8 levels deep? That's really hard to read, so let's see if we can rewrite that together so that it's not so bad."

When I say "design decisions" - some of those most certainly can fall under trivial nitpicking. For example, there can be multiple ways to encapsulate data and do things around that data when you're processing deeply nested models and doing multiple calculations and transformations on it. I actually was very opinionated about something that one of the managers on the team disagreed with but myself and my direct manager discussed it and it was 100% the right way to do it. The other guy wasn't "wrong", that would have "worked", this just made.. a lot more sense from a readability and separation of functionality standpoint.

Playing to the other side of this - yes. Nobody can actually give a thumbs up or thumbs down about these design decisions because they're kinda clueless then it turns into us implementing them and being told "ehhh maybe not this way - that way!" and a frustrating cycle of various people debating it.

Mniot posted:

Other than that, your code should try to look just like all the other code in the project. Most devs I've worked with are great at making that happen at the level of functions and modules, so the review is mostly to help enforce consistency between developers at the granularity of individual lines.

There was no Scala code in the project except that submitted by Good Will Hrunting for a while, actually. I was the first person to push to master. The rest is all build.gradle and poms and poo poo. So I guess I get to dictate the style?

Skandranon
Sep 6, 2008
fucking stupid, dont listen to me

Good Will Hrunting posted:

There was no Scala code in the project except that submitted by Good Will Hrunting for a while, actually. I was the first person to push to master. The rest is all build.gradle and poms and poo poo. So I guess I get to dictate the style?

I would say so, and if you like Scala at all, should take this as far as you can.

Good Will Hrunting
Oct 8, 2012

I changed my mind.
I'm not sorry.
My 1-on-1 went okay. My manager said he is aware of the issues with 3 leads conflicting and the lack of product managers and he's working on it. Seems to be happy with my contribution so far, so I guess just see if he comes through on the promise to get things separated better and get an actual PM?

ultrafilter
Aug 23, 2007

It's okay if you have any questions.


For now. Keep a deadline, though; you don't want them to just keep promising that something better will happen eventually for the next year.

mrmcd
Feb 22, 2003

Pictured: The only good cop (a fictional one).

Is anyone else getting like 4 unsolicited emails from Amazon recruiters a week that are starting to sound more and more like they're written by Gil from the Simpsons?

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

mrmcd posted:

Is anyone else getting like 4 unsolicited emails from Amazon recruiters a week that are starting to sound more and more like they're written by Gil from the Simpsons?

On the plus side, anyone at less than 6.2 figgies should have an easy way to change that while they're trying to hire literally everyone.

Ralith
Jan 12, 2011

I see a ship in the harbor
I can and shall obey
But if it wasn't for your misfortune
I'd be a heavenly person today

leper khan posted:

On the plus side, anyone at less than 6.2 figgies should have an easy way to change that while they're trying to hire literally everyone.
This notation confuses me. There are so many different things it might mean. 100k + 100k * .2? 100k + (1M - 100k) * .2? 10^(6.2 - 1)?

TooMuchAbstraction
Oct 14, 2012

I spent four years making
Waves of Steel
Hell yes I'm going to turn my avatar into an ad for it.
Fun Shoe
I think they meant $120k, taking "six figures" to mean "$100k", but yeah, it's dumb notation.

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.

Ralith posted:

This notation confuses me. There are so many different things it might mean. 100k + 100k * .2? 100k + (1M - 100k) * .2? 10^(6.2 - 1)?

TooMuchAbstraction posted:

I think they meant $120k, taking "six figures" to mean "$100k", but yeah, it's dumb notation.

5 figgies is $10k, 6 figgies is $100k and 7 figgies is $1MM. The relationship isn't linear, so the only thing that makes sense is 10^(6.2-1).

Or about $150k.

b0lt
Apr 29, 2005

Mniot posted:

When I've done and had code reviews as part of a smooth-running dev team, it is all trivial nitpicky bullshit. I've got a recent PR that was quite large here, so let's see what the reviewers wrote:

This just means that either your code is trivial enough to be bugproof, or your code reviewers are bad.

yippee cahier
Mar 28, 2005

leper khan posted:

5 figgies is $10k, 6 figgies is $100k and 7 figgies is $1MM. The relationship isn't linear, so the only thing that makes sense is 10^(6.2-1).

Or about $150k.

this guy knows what's up

Adbot
ADBOT LOVES YOU

RandomBlue
Dec 30, 2012

hay guys!


Biscuit Hider

yippee cahier posted:

this guy knows what's up

$150k is a whole lot less letters than 6.2 figures, especially if you include all the follow-up posts. Your optimization is counter-productive, not self-documenting and a maintenance nightmare.

I award you no points and may God have mercy on your soul.

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