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
steckles
Jan 14, 2006

Vulture Culture posted:

Generally speaking, don't put yourself in the position of telling a C-level what is or is not an acceptable business risk unless they have hired you to do that job. Use this as a learning opportunity to figure out what assumptions you've been taking for granted while speaking to other technical experts, and figure out how to make those known to "the business" without teaching them how to do your whole job
Yeah, it's ultimately not my place to make those decisions. I'm the most senior non C Suite technical person in the company and am involved in practically every long-term estimate and feasibility discussion, so it's not the first time I've had to provide some light edutainment to members of the SLT. This particular thing has come up a few times and we've always managed to swat it down, but now that we've got decision makers who aren't well versed in our niche and the budget to seriously consider acquiring another company, I want to do what I can to make sure the technical (im)practicalities are well known at least.

Vulture Culture posted:

Surface the top three to five risks, quantify them as best you can, and propose a militantly awful solution that involves taking engineers from several revenue-generating product lines so you can get all the business's tech directors to do the hard part of this for you. No reason this situation should fall on your shoulders alone
Making the build and buy estimates a similar number of months that also requires a dream team of our most talented developers does seem like a good way to make both seem like a bad idea.

Adbot
ADBOT LOVES YOU

Volmarias
Dec 31, 2002

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

steckles posted:

Yeah, it's ultimately not my place to make those decisions. I'm the most senior non C Suite technical person in the company and am involved in practically every long-term estimate and feasibility discussion, so it's not the first time I've had to provide some light edutainment to members of the SLT. This particular thing has come up a few times and we've always managed to swat it down, but now that we've got decision makers who aren't well versed in our niche and the budget to seriously consider acquiring another company, I want to do what I can to make sure the technical (im)practicalities are well known at least.

Making the build and buy estimates a similar number of months that also requires a dream team of our most talented developers does seem like a good way to make both seem like a bad idea.

So what keeps them from deciding "oh guess we should buy them then" and forcing this on you?

steckles
Jan 14, 2006

Volmarias posted:

So what keeps them from deciding "oh guess we should buy them then" and forcing this on you?
Well nothing really, if they can convince the board that it's a good idea. Hopefully they're asking me for estimates so they can determine if it's worth it or not.


VVVVV That's my sense. At least I would be involved in due diligence and have plenty of opportunity to dig up technical deal breakers. Still would be a massive waste of everyone's time.

steckles fucked around with this message at 02:45 on Nov 29, 2023

Volmarias
Dec 31, 2002

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

steckles posted:

Well nothing really, if they can convince the board that it's a good idea. Hopefully they're asking me for estimates so they can determine if it's worth it or not.

They've already decided, they just want you to make the decision look justified.

shame on an IGA
Apr 8, 2005

Volmarias posted:

So what keeps them from deciding "oh guess we should buy them then" and forcing this on you?

they already decided that and need OP to help them justify it to themselves post-facto. The pro move for OP right now is to get equity in the target corp somehow so his dumbshit bosses at least have to buy it from him

Steve French
Sep 8, 2003

shame on an IGA posted:

they already decided that and need OP to help them justify it to themselves post-facto. The pro move for OP right now is to get equity in the target corp somehow so his dumbshit bosses at least have to buy it from him

I’ll assume this is a joke because that is an extremely not pro move

ElGroucho
Nov 1, 2005

We already - What about sticking our middle fingers up... That was insane
Fun Shoe
Right.

Get your cousin Sal to buy it.

ulmont
Sep 15, 2010

IF I EVER MISS VOTING IN AN ELECTION (EVEN AMERICAN IDOL) ,OR HAVE UNPAID PARKING TICKETS, PLEASE TAKE AWAY MY FRANCHISE

ElGroucho posted:

Right.

Get your cousin Sal to buy it.

https://lawsofinsidertrading.com/

redleader
Aug 18, 2005

Engage according to operational parameters

shame on an IGA posted:

they already decided that and need OP to help them justify it to themselves post-facto. The pro move for OP right now is to get equity in the target corp somehow so his dumbshit bosses at least have to buy it from him

the equity idea is great because then op can claim conflict of interest and avoid having to deal with this

Ganondork
Dec 26, 2012

Ganondork

steckles posted:

Them: We need you to estimate how long it'd take the dev team to implement *some company's algorithm to automate desirable thing* from scratch
Me: Why? Our analysis has indicated that their algorithm isn't very good and that's backed by what we know about their customer churn
Them: We're doing a build vs. buy exercise
Me: And?
Them: And we need to know how close we'll get to *impractical dream offering that requires AGI and time travel* if we acquire their company
Me: Given that we don't think it works, it probably won't get us meaningfully closer to *dream goal*
Them: Right, so we also need as estimate for how long it'd take the dev team to make the algorithm work for *dream goal* if we acquired their company
Me: Do you have some source of information or insight beyond what we've already figured out?
Them: No. Can you have an estimate for how many quarters both would take by tomorrow morning? We're making a slide deck to present to the board
Me: :suicide:

Does your org have experience with ML/AGI projects? I've been on the outside of one where we were meant to integrate with a ML team, and it took them years to get to the point where they weren't doing things manually. They also had a really hard time hiring reliable engineers.

If this is the sort of situation where your company has "idea guys" throwing big ideas at you, it's probably best to give them a reality check so they understand what they're asking for. For an MVP, you can fake some AI/ML by throwing numbers at K-sigma, DB scan, etc. but that will require a lot of manual tuning and is incredibly dull, time consuming work.

My suggestion would be to propose the ideal, which means lots of new infrastructure in an effort to build an online training platform, but also propose an MVP that stresses just how much effort and focus will go into building and maintaining that one thing.

If only we lived in a world where white collars gave a poo poo about the people building these things.

steckles
Jan 14, 2006

Ganondork posted:

Does your org have experience with ML/AGI projects? I've been on the outside of one where we were meant to integrate with a ML team, and it took them years to get to the point where they weren't doing things manually. They also had a really hard time hiring reliable engineers.

If this is the sort of situation where your company has "idea guys" throwing big ideas at you, it's probably best to give them a reality check so they understand what they're asking for. For an MVP, you can fake some AI/ML by throwing numbers at K-sigma, DB scan, etc. but that will require a lot of manual tuning and is incredibly dull, time consuming work.

My suggestion would be to propose the ideal, which means lots of new infrastructure in an effort to build an online training platform, but also propose an MVP that stresses just how much effort and focus will go into building and maintaining that one thing.

If only we lived in a world where white collars gave a poo poo about the people building these things.
I would call our organization AI skeptical. The implications of an LLM hallucination in the wrong spot are too large for us to consider loving with and the datasets our clients generate would be difficult to train a traditional ML model on given the licensing and legal restrictions in place. This has meant that, outside of side projects and the occasional hackathon thing, we don't have a huge amount of in-house DL/ML/AI experience. I would love an excuse to buy a few racks of H100s and hire a couple grads to run amok, but also don't want to be the one who's accountable if things don't work out.

We've actually kicked the tires of a few businesses that claim to use AI in our niche, but it hasn't been that impressive so far. They usually fall into one of two categories; Groups using simple statistics and groups putting a wrapper around ChatGPT. One company was basically doing autocorrelation on timeseries data and had determined such amazing things as "there are fewer requests on Saturday and Sunday", and "things started at 4:50pm often take until the next day to finish". Another company was, I'm not joking, pasting text into ChatGPT and appending "tl;dr" to it.

One company was using ChatGPT to prefill some extremely long recurring paperwork quite successfully, but they were careful to have everything proofread by domain experts. Last I heard, they got bought and the new owners were gradually reducing the number of proof readers on staff, so we'll see how that ends up going. I think it's just a matter of time before an LLM hallucination results in a refinery blowing up or something.

steckles fucked around with this message at 20:52 on Nov 29, 2023

Love Stole the Day
Nov 4, 2012
Please give me free quality professional advice so I can be a baby about it and insult you

Macichne Leainig posted:

Try to delete it, see that even though the service is unused, it's still load bearing, and then shelve it and not touch it for 10 years in my experience

Hey I know this component is deprecated, but we have a new feature on the replacement platform, but the Product leadership decided that the legacy components must support it so can you deploy a build 2 Sprints from now to align with our deadlines for which you weren't involved in the timeline estimate meetings or do I have to escalate this up to your VP and make her think you're not a team player ?

Ither
Jan 30, 2010

Do most people include the signing bonus in the calculation for total compensation?

Without it, I go from ~$196,000 (Salary + Year 1 Initial RSU Grant + Bonus) to ~ $218,000 (New Salary + Year 2 Initial RSU Grant + Year 1 Additional RSU Grant + Expected Bonus)

With it, it's ~$221,000 to ~ $218,000

Not the biggest gap, but it doesn't feel as good to go down.

Jabor
Jul 16, 2010

#1 Loser at SpaceChem
Are you getting your signing bonus again by staying at the old place? No? Then it shouldn't impact your decisions going forwards.

wilderthanmild
Jun 21, 2010

Posting shit




Grimey Drawer
I wouldn't include signing bonus in total comp as conventionally understood. I usually feel like signing bonuses are to offset stuff like salary and bonus you're missing out on.

Like if someone takes a job, unless they time it well, they push back their next vest as well as possibly missing out on their bonus. Giving a lump sum of $XX,XXX offsets at least part of it if not totally replaces it.

Well, that and repayment clauses forcing some people to stay at least X months unless they wanna give it back.

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
Do you specifically care about maximizing your TC number for the sake of bragging about it rather than maximizing your amount of money or something? Whether or not you count a signing bonus as part of your total comp isn't a factor in the question of if you'll make more or less money by hopping jobs.

Vulture Culture
Jul 14, 2003

I was never enjoying it. I only eat it for the nutrients.
There are an awful lot of ways for expectations on both cash bonuses and RSUs to bite you. These numbers are both close enough that I think the growth prospects for both companies are the only thing that really matters, compensation-wise.

Falcon2001
Oct 10, 2004

Eat your hamburgers, Apollo.
Pillbug
Yeah I mostly view signing bonuses as making up for invested RSUs myself.

Steve French
Sep 8, 2003

I think he’s saying that he’s staying with the same company and if you include last years signing bonus, his TC is going down YoY, and feels weird about it.

Ither
Jan 30, 2010

Steve French posted:

I think he’s saying that he’s staying with the same company and if you include last years signing bonus, his TC is going down YoY, and feels weird about it.

It's this. I'm definitely staying at the company (because I don't think I could get a better offer in this market)

Last year was the first time I got a signing bonus.

Previously, my TC would always go up every year. This is the first time (if the signing bonus is included) in nearly a decade where it's not.

Just feels off, but not the end of the world :shrug:

Ither fucked around with this message at 10:53 on Dec 5, 2023

Nybble
Jun 28, 2008

praise chuck, raise heck
Welcome to the post-ZIRP world. Layoffs & budget slashing means it’s a lot rougher out there… in comparison. Still making good money compared to most of my peers.

Ither
Jan 30, 2010

How are some of you making out in terms of year to year total compensation?

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
My TC's probably going to drop in half next year, but that's because my acquisition RSUs that were priced at under a third of the current stock price have finished vesting.

wilderthanmild
Jun 21, 2010

Posting shit




Grimey Drawer

Ither posted:

How are some of you making out in terms of year to year total compensation?

This year TC 278. Next year TC 348.

Edit for relevant comparison this is working in roughly staff engineer level role with 13 years experience. Its worth noting I live in a major Midwestern city but am not regionally adjusted(I thank my lucky stars about this a lot)

Nybble posted:

Welcome to the post-ZIRP world. Layoffs & budget slashing means it’s a lot rougher out there… in comparison. Still making good money compared to most of my peers.

Luckily, layoffs have dropped off massively in H2 compared to H1. Still some jingling around but we're back at like mid to early 2022 levels. Some companies even starting to end their hiring freezes, but similar to how it took a year or so for the layoffs to propagate through the industry in earnest, I'd probably expect it to be a year or so before the market feels fully normal. I don't think "normal" is returning to 2021 hiring frenzy for what that's worth.

wilderthanmild fucked around with this message at 20:00 on Dec 5, 2023

Volmarias
Dec 31, 2002

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

wilderthanmild posted:

This year TC 278. Next year TC 348.

Edit for relevant comparison this is working in roughly staff engineer level role with 13 years experience. Its worth noting I live in a major Midwestern city but am not regionally adjusted(I thank my lucky stars about this a lot)

Luckily, layoffs have dropped off massively in H2 compared to H1. Still some jingling around but we're back at like mid to early 2022 levels. Some companies even starting to end their hiring freezes, but similar to how it took a year or so for the layoffs to propagate through the industry in earnest, I'd probably expect it to be a year or so before the market feels fully normal. I don't think "normal" is returning to 2021 hiring frenzy for what that's worth.

:eyepop:

Yeah, you're making out great if you're not getting a 30-40% CoL haircut.

Meanwhile, my total comp has gone from 250-ish last year, to about 150 this year from layoff severance and mandatory WARN act lead time (thank you NY!!!). Next year's TC is currently projected at 0, but I'm optimistic that this will change.

Love Stole the Day
Nov 4, 2012
Please give me free quality professional advice so I can be a baby about it and insult you
Every time you guys throw out these 250 numbers or whatever, I wish you could clarify whether it's base+bonus+(new_rsus/years_until_fully_vested), if it's just the straight up base, if it's based on the stock price when it was granted, or if it was based on the stock price when it last vested. Because if you ignore the stock price going down and don't bother annualizing the new grant's vesting period, you'd think I'm doing way better than I actually am.

Volmarias
Dec 31, 2002

EMAIL... THE INTERNET... SEARCH ENGINES...
Yeah, the number I'm throwing out is total comp: salary + (calculated at grant time) RSU + 401k match + benefits value. Base salary for me was a bit under half. In theory the RSUs could take a giant dump, but having them on auto sale partially mitigates that, and asking wherever you're changing jobs to for a signing bonus to compensate for unvested RSUs you would leave behind closes the gap.

prom candy
Dec 16, 2005

Only I may dance
My TC dropped to 60% of what it was but I'm also only working three days a week.

wilderthanmild
Jun 21, 2010

Posting shit




Grimey Drawer
I guess it's worth noting that my next year TC is largely due to an additional cliff.

I will be very sad if I get laid off or something before then.

America Inc.
Nov 22, 2013

I plan to live forever, of course, but barring that I'd settle for a couple thousand years. Even 500 would be pretty nice.
Does anyone have tips for summarizing or note taking on complex spaghetti code and divulging my findings to people on the team?

At my current job we've got 2 scripts that are both thousands of lines long, and take a long time to run. Nobody really has a complete picture of how they work because the docs are insufficient and everyone that wrote it moved on.

I've found myself spending weeks on these scripts, and now I'm trying to make daily notes of my findings and share them with the stakeholders on the project.

I've also done pair programming with other developers that have worked a little bit with the area. Thankfully the script I'm working on also logs the different stages it's in, so I don't need to have a million breakpoints.

I even tried pinging one of the devs that left on LinkedIn lol.

When I'm done with what I'm working on, I want to do more than update the docs. I'm trying to get my manager on board with doing a presentation.

I could imagine two tools that could be really helpful:
- a language model that allows you to do queries on the code, like "where do we download this file from this external source, or what are the external dependencies of this script? What are the main steps of this program?"
- a visualization tool that shows how data flows in the script, and allows you to play and scroll through the execution of the program like a video.

Oh yeah I'll also mention no one writes any loving tests at this company.

America Inc. fucked around with this message at 03:43 on Dec 6, 2023

Steve French
Sep 8, 2003

I have spent and still spend a lot of my time untangling legacy messes, and am in the middle of working through a pretty big and critical one so this is pretty top of mind for me.

My process is nothing terribly involved, but I think even just at a very high level a few specific things help a good bit.

First, I'll spend some time really focusing on reading and understanding the code the best that I can. For me, while reading through the code and gaining an initial understanding, this is the opportune time to make smaller improvements that don't yet require an understanding of the whole thing. Making sure everything is up to current code standards, simplifying chunks that are unnecessarily complex, removing unused cruft. YMMV, but in my experience this can add up to a lot, and it's easier to do right now while you're looking at the code and the localized bits are fresh in your mind, and then it'll be incrementally easier for anyone else to read and understand later on, documentation or not.

In this most recent bout, I'd just read through the flow and each time I saw some code that I didn't understand what it was doing, or wasn't sure if it was necessary, I'd stop and dig in to get that chunk; sometimes it'd become clear it was a rabbit hole and I'd put a pin in it, but a shocking percentage of the time it would turn out it wasn't necessary at all anymore and could be removed or drastically simplifed.

Then, as I'm doing this, I'm building a mental model of how it's working and solving the problem at hand, and thinking about how it might be restructured or simplified.

Once I've done that once over, I'll write up a doc explaining how it all works, with both text explanations and context, and a flow chart laying out the logical flow of things. Then I'll solidify how I'd like it to work, and mock up a new flow chart with the proposed flow, and explanations of each step in (not necessarily strict) order to get from the current state to the desired state.

Bongo Bill
Jan 17, 2012

There's no good substitute for just reading the code closely and thoroughly. Tests would open up a lot of good options, but you don't have any, so RIP to that.

However, everything in computer science, even a god-awful mess, is a digraph. So install a graphviz plugin for your editor of choice and get in the habit of tracking information in graph form. It's hard to say what graphs will be important, so try different things. Perhaps you can track the flow of data through the program, or see where variables are written and read, in the hopes of revealing what parts are the most coupled to other parts or where you might be able to draw module boundaries.

Also, see about possibly running the whole thing through a linter and fixing all the issues you can. Could be very educational. Risky without tests, though.

Steve French
Sep 8, 2003

I will add that tests, whether you have them or not, are a good way to validate your understanding of the code.

Like, if you have no tests, you might not go as far as adding tests that are treated as assurance that the code is correct, and are treated as regression tests right away, but you can still write tests of your understanding; if you think it behaves in a certain way, you can write a test that verifies whether that’s true or not.

CPColin
Sep 9, 2003

Big ol' smile.
I agree with writing tests as a strategy. It makes you focus on small pieces of the overall code in turn and (sort of) documents what they do. My predecessor wrote basically no documentation or tests and breaking things into testable chunks helped me start untangling their garbage Groovy code as I started rewriting it in a sane language.

redleader
Aug 18, 2005

Engage according to operational parameters
running through with a debugger is usually somewhere between "really helpful" and "actually necessary"

Falcon2001
Oct 10, 2004

Eat your hamburgers, Apollo.
Pillbug
Basic tests are probably good; even if the tests are literally 'If I run X input I get Y output'; because from there you might be able to start trying to tease it apart. I'd recommend next trying to (assuming this isn't bash in which case holy poo poo you're hosed) break it out into multiple files/etc.

I actually had a somewhat similar experience and that's what I did: figured out how I could at least confirm input/output and then starting just moving stuff around. Eventually I was able to condense down to about a hundred lines of truly cryptic code that I was able to at least jam into a single function and go talk to the original dev.

Edit: Nthing the 'debugger' comments. It's incredibly useful.

Falcon2001 fucked around with this message at 10:13 on Dec 6, 2023

Lyesh
Apr 9, 2003

"Working Effectively With Legacy Code" is a decent book on the subject that's been recommended before in one of these threads, though it's a bit Java focussed.

One of the key insights that the author has is that it can be enormously helpful to bang on the refactor tool in your IDE (extract method has been the most useful for me) to clean things up and make the flow of logic and variables a lot more obvious. The main benefit being that you are unlikely to break poo poo before you have something that is reasonable to unit test. Some kind of end-to-end testing is step 0 in this process, ofc.

Using the debugger in the end-to-end tests can be a huge help too, esp for highly dynamic code.

Pie Colony
Dec 8, 2006
I AM SUCH A FUCKUP THAT I CAN'T EVEN POST IN AN E/N THREAD I STARTED

Volmarias posted:

Yeah, the number I'm throwing out is total comp: salary + (calculated at grant time) RSU + 401k match + benefits value. Base salary for me was a bit under half. In theory the RSUs could take a giant dump, but having them on auto sale partially mitigates that, and asking wherever you're changing jobs to for a signing bonus to compensate for unvested RSUs you would leave behind closes the gap.

No one includes the 401k match and benefits value in their TC unless they're a recruiter trying to underpay someone

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.

America Inc. posted:

- a language model that allows you to do queries on the code, like "where do we download this file from this external source, or what are the externa

if you have chatgpt plus you can use the create a gpt feature and upload the code to it.

Adbot
ADBOT LOVES YOU

Mega Comrade
Apr 22, 2004

Listen buddy, we all got problems!
Someone somewhere is accidently going make that gpt profile public for all to see and use after uploading their entire companies code base to it.

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