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
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

5TonsOfFlax posted:

We use React at work, and I'll admit that it's had more staying power than the prior half-dozen frameworks we went through, but that just means it's lasted a couple of months. We've already gone through several different flux implementations, and there's always a new shiny one around the corner.

This honestly sounds like more of a problem with your workplace than with your domain. Most workplaces I've been at pick one toolset that's reasonably current at the time they start working, and then they stick with that toolset for at least a decade. Your managers need to learn to say "no" when your developers say "hey, let's try out X new tool I've been reading about!"

Adbot
ADBOT LOVES YOU

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
San Francisco is the most expensive city to live in in the United States. We're talking $1500/month for a studio apartment. Its housing market is supremely hosed up, the traffic isn't great (not the worst city, I think that's Atlanta, but still not great), the mass transit isn't great either. The Bay Area in general is a great place to be for a techie that wants job security because there's so many tech jobs here. Just be aware of what you're getting into.

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

Guess my information is a year out of date. :v:

quote:

Of course you can live in a nearby city for quite a bit less and commute via BART.

You can, but your commute will be 45 minutes each way on a good day.

EDIT: re: work culture, as was noted it really depends on the company. It's very easy to get taken advantage of, though; there are tons of developers putting in 8-5 working hours (48 hours/week) and plenty of people doing even more.

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

MeruFM posted:

lol if you have more than 1 room in your apt

might as well buy a lexus ls or mercedes S and sleep in the back

You guys did see that article about a Google employee that decided to buy a truck and install a camper shell to live in, in the Google parking lot, rather than get an actual proper home, right?

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 worked for Amazon from 2005-2008, and had six bosses during that time due to constant re-orgs. We also had pager duty -- one-week "shifts" during which you'd get paged whenever the order rate dropped below some threshold. Our team at times dropped down to 3 people, so you spent a third of your time on pager duty.

I hope like hell Amazon's improved in the last eight years because holy loving poo poo that's no way to run a company.

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

mrmcd posted:

I got an offer from a company today, and I'm almost certain I'm going to take it. Because of their own onboarding scheduling, I have the choice of either taking 4 weeks off or 8 weeks off.

Money isn't really a concern so having a two month vacation like a European aristocrat sounds awesome, except I'm a little bit worried I'll be bored as hell for that much time off, considering I don't have a large contingent of unemployed friends. Then again maybe this is just my American worker Stockholm syndrome talking.

Anyone taken longer-ish breaks between jobs? Was it actually relaxing and fun or after like the 4th week more like "whelp only 28 more days of daytime TV and video games!"

You absolutely need to find some project to use that time on. I don't know about you, but I can't handle one week of idleness, let alone eight. Write a videogame, take up painting, renovate your home, do a Let's Play, whatever, just give yourself something productive to do with your energy or you'll probably go insane.

Congrats on the offer, by the way.

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

Spazmo posted:

That would be illegal. US employers are forbidden from discriminating against employees on the basis of their immigration status. Also, keep in mind that while it costs a fair amount of money in legal fees for a company to get you an H1B (low five figures would be my guess), it's peanuts compared to the value added by a skilled software engineer. It would be deeply stupid for a company to underpay you on the basis of being an immigrant when another employer would happily pay you market rate.

Illegal or not, it's certainly true that H1B recipients must keep a job or else they get deported, which gives extensive power to their employers. I haven't personally heard of anyone being abused by the system, but it's very easy to imagine how it could happen.

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

return0 posted:

Can an H1B get another job elsewhere while employed in the US?

As I understand it (IANAL, TINLA), yes, but if there's more than a very brief gap in their employment then they have to leave the country. The new employer may also have some extra hoops to jump through to "transfer" the visa; I don't know anything about that.

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

return0 posted:

USA tech salaries are just ridiculous. I get paid a decent wage for where I live in the UK (up north far away from London) and converting my salary from GBP to USD shows I earn $65K. Is the US extremely expensive for housing or petrol something?

The tech centers of the US tend to coincide with absurd costs of living. San Francisco is the most expensive city in the country and the other Silicon Valley cities aren't all that far behind it. NYC is also very expensive and Seattle is pretty dang high too.

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

Ithaqua posted:

Some companies have lower pay but tangible (or intangible) benefits. Like, I have a friend who makes less money than average, but the company has a 35 hour work week so he's in the office 8-4 and is home before rush hour, and thus can spend more time with his kid.

How is an 8-4 workday 35 hours? The classic 40-hour work week is 9-5.

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

necrobobsledder posted:

After 2 years of Java on a resume I'd refrain from asking framework questions that are typical in most Big Java shops (Spring, Struts, EJBs, you know the drill). However, I'd ask for a comparison of different data structures in Java like etc. etc. etc...

Man, I've been working in Java for the past two years and I don't know any of the stuff you just mentioned (beyond a bit about our build system, but honestly I don't have to touch it all that often). :stare: I guess our project is a little small to be truly enterprisey; we're only around 90kLOC.

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

sarehu posted:

On the other hand these might be people that are perfectly capable of thinking precisely and they're generally useful for a large swath of development, but some other mental deficiency -- either from being bad at thinking on the spot, or a general lack of problem solving creativity -- prevents them from doing well at interviews.

Interviewing poorly is definitely a potential problem, much like testing poorly can be a problem for some students in school. It's a high-stress environment and requires interpersonal skills that some people simply don't train very often.

The converse of course is the person who interviews brilliantly but is crap at actually getting poo poo done, which is why we have all these technical problems in the first place.

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
You could always ask for a different title.

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

apseudonym posted:

Businesses are so lethargic, slow to switch products due to cost, and generally just :effort: that business software can get away with all sorts of poo poo that would never fly in the consumer space.

It's not so much that as that for every minute Amazon is down, they lose millions of dollars in revenue. Similarly, WhatsApp has huge financial pressure to be available so that their users can use the system. Meanwhile, a lot of B2B/government/military software is written to spec with few incentives to ensure that the system works as a system instead of "working as designed". Once you get paid for your contract, you want to be done and dusted ASAP so you can move to the next contract.

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

kitten smoothie posted:

What are the SDE title levels at Amazon?

For instance the friend who referred me for an open position is an SDE III, what level of experience/responsibility does that correlate to?

I haven't worked there in most of a decade, but back then an SDE3 was basically one step down from the software architects who were responsible for overseeing the overall design of major platforms. SDE3s generally had probably 5-ish years of experience? Keep in mind that Amazon experienced huge turnover back then (and they may still these days; I haven't been paying attention), and liked to hire fresh out of college, so there were a lot of inexperienced devs at SDE1/2.

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
While we're wall-of-texting, here's my story. Tl;dr working for a startup that's barely hobbling along, trying to figure out if I should jump ship and if so, how.

Background: mid-30's, been a software dev all my adult life. I spent several years working in academic software development, because I wanted a) to pivot more towards scientific software development (as opposed to web dev, which I'd been doing previously), and b) to get away from the more toxic aspects of some Silicon Valley software development houses (a.k.a. I wanted a 40-hour work week and decent time off options with no oncall duty). The academic life went pretty well, though it was of course less well-paid than industry work would've been, to the tune of a 10-20% paycut, I'd estimate. The work itself was a mixture of hardware control (manipulating scientific devices and reading values) and application development (writing GUIs to help less-computer-savvy researchers run their experiments). I liked it a lot. Lots of requirements gathering, developing new algorithms, designing hardware abstraction layers, figuring out what our users need vs. what they say they need (invariably wildly different things), etc.

However, the grant that funded the project I was on eventually failed to be renewed, so we decided to make a startup and get funding directly from our (fairly wide base of) users instead of from the government. That happened late last year. "We" in this case is me and my coworker, just the two of us. Said coworker took on most of the "business infrastructure" tasks, stuff like licensing, taxes, payroll, invoicing, etc, while I focused more on our software. This worked well for about half a year...and then my coworker burnt out, and was basically AWOL for most of a month while I struggled to keep things together. The fact that we'd been in a "one truck" situation (number of people who need to get hit by trucks to hose the company) should have been a red flag to me, but I didn't want to be involved in the more business-y side of things, so I let it slide. My mistake.

My coworker's more or less back now, except that (against my advice) he keeps trying to work long hours, in order to "catch up", and inevitably ends up having to take multiple days off to recover when he overextends himself again. He's also working stupid hours (coming in at 2PM or later) because of his hosed sleep schedule, which makes coordination difficult at best since I'm more of an early bird myself. Plus he's a lovely communicator at the best of times. I've been trying to compensate by organizing our work more and taking on a more managerial role, but there's only so much I can do without actual leadership authority and the necessary background in accounting, billing, etc. that currently only said coworker has. And I'm not a manager anyway, though I'm considering learning to be one.

Meanwhile, while we're still alive (despite having zero investment capital; we're getting by month-to-month on meager sales and one-off contracting jobs), we're definitely not making even mediocre salaries. It's enough for me to eat and pay my mortgage, but I'm not really banking anything, let alone putting anything in the retirement account. And while I really like the company's mission, it's really loving hard to maintain motivation when I'm working solo all the time. On the other hand, the bio/life sciences community in the SF Bay Area is small enough that jumping ship prematurely could be diplomatically difficult. Plus defining "prematurely" could be very difficult, as my coworker is even more intrinsically motivated about the project than I am, so he's basically guaranteed to keep it hobbling along and apparently healthy even if I were to quit.

So basically, I'm wrestling with a few things here:

* Sunk cost: I do want the company to succeed, and I've already dumped a lot of effort into it; I'd hate to see all that go to waste. Not to mention I own a substantial fraction of the company (though how I would leverage that ownership, I have no idea)
* I don't want to throw my coworker to the wolves by abandoning him to try to run the company solo.
* The pay sucks.
* How would I justify to a potential employer (who cares about our company) that I left our company without it declaring bankruptcy or having some other obvious self-destruct?

I don't feel trapped exactly, but this is a very tricky situation, at least from an inside perspective. Any advice?

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

necrobobsledder posted:

But your real priority IMO is to be honest to the other person most invested in that company - your co-founder - and try to work something out together. If he's burning out and you basically are too, you guys have a mutual uh... "frame of emotion" to work with.

That's an interesting way to look at things, thanks. I don't feel like I'm being burnt out -- I'm still doing the same work schedule as usual, taking my weekends to relax, etc. But the situation is definitely stressful and has been lessening my enthusiasm for the work, so maybe there's some more, uh, "psychology" going on in my own head than I'd recognized, so to speak.

And yeah, it's definitely a cofounders situation -- that's even in my title, and I own a substantial portion of the company. I'm not really so much worried about people saying "wait, you were part of a failed startup, what did you do wrong" as I am about them saying "wait, you were part of the team keeping X awesome program alive, how dare you let it die?" Basically every company that I could apply to work for that's in my area of expertise will be well aware of what we do and morally (if not financially) supports us.

Of course, if they financially supported us, we probably wouldn't be in this situation.

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

necrobobsledder posted:

It's your customers' responsibility to also reduce their risk by working with such a tiny company. It's why most large companies just can't go on a limb to support pet projects - they need the stability of their vendors as well. Most large companies will ask for something like a code escrow service and you can negotiate what works and what doesn't. Furthermore, if you can't manage to make something like $300k / yr between two people after a successful POC or two and you have even one enterprise customer in almost any vertical, your sales person that negotiated the deal should be fired. The tiniest deal I've ever heard of for software was about $50k 10 years ago and it was for basically "can you give us a demo that covers these simple use cases?"

Yeah, one of the problems I've been wrestling with is that both me and my coworker are awful at sales/marketing, my coworker is extremely reluctant to hire that out (ostensibly for fear of making us look bad by irritating our potential customers with bad marketing), and up until recently I literally didn't have access to the information needed to take steps on this front on my own.

quote:

One option available is to divest the company on both your parts agreeing that it's financially unsustainable and that the code should be given back to your customers out of goodwill. Most companies that are viable for niche community-serving projects are spun out of the original developers getting spurned internally but there being sufficient business interest in paying for continued development. Cassandra and Storm are good examples.

The source code's open, actually -- we've been selling support contracts instead. So nobody's losing access to the program, they're just losing access to the people who a) know best how to make it work, and b) are willing to sell that service.

What we may need to do is put the company into mothballs, though. If it can't support the two of us working full-time, then maybe it should only support one of us, or a half of one of us, and the rest of those resources go into more reliable jobs...

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

mrmcd posted:

If you actually like the work, and the problem is just that it's not really paying enough to be worth the time you put into it, have you considered just charging a lot more? If your customers actually like the product and service and find it valuable to their business, there's a pretty strong possibility you're just undercharging. For profit businesses aren't going to offer to pay more on their own, but a lot more revenue for you would solve the problem meager financial rewards, stress from living on thin margins, and also possibly let you hire another person or two to share the work load.

If they absolutely will not accept a significant price increase, then the work you do probably isn't worth while economically speaking, so you can just notify your customers you intend to wind down the company over the next year or so. This has the added negotiation bonus in that you (probably) aren't bluffing, because why keep doing something that's paying you poorly and making you miserable? Basically, don't sell yourself at charity wages to for profit businesses.

edit: I'm assuming the problem also just a matter of finding more customers, since it seems like you don't have any slack to take on more customers anyway.

Digging this back up. The primary issue really is just that I can't rely on my coworker to be at work reliably. Like, one week he'll be fine, the next week he's gone for three days and for the other two he comes in at 2PM. This makes coordination extraordinarily difficult, which is problematic since much of our work requires coordination. Plus I just plain don't like working alone all the time.

Low pay doesn't help, of course, but I could tolerate that as long as I felt like I was working with the guy and getting things accomplished. If I'm just spinning my wheels most of the time, that's a different story.

Anyway, I laid this all out with my coworker, and we're going to keep a close eye on things -- if his attendance remains erratic then I'll probably just give up. It's not worth the stress.

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

A MIRACLE posted:

My company wants to reduce my title and salary because "our team is too expensive for the value they provide." I only took this job over other offers because of how much they were going to pay me. I have zero passion for the domain problems they address.

I'm ready to jump ship already because this place is a mess but I've only been here since February and don't know how that will look on my CV

A single short employment period can be explained as a poor fit. It's when you get several of them strung together that potential employers start thinking you're a jobhopper. That said, you will definitely be required to explain why you didn't stay with that job.

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

Pollyanna posted:

I'm definitely not keeping up with the "make sure your WFH days are well documented" part, which is partly due to the fact that there's very little intra-office communication, not much structure around day-to-day project management, and the fact that everyone's out at a hackathon this week except me :drum: WFH for me is literally working from home, I do the exact same things that I do in the office except with more focus and usually more success. Sure, it's convenient when I have a big doctor's appointment or something, but that's not the point of it and I'm doing work anyway. Maybe that's not something I should be doing.

...so do you guys keep track of what you're doing, like, at all? How do you make certain that the team is effectively working together to accomplish tasks that the company needs to have accomplished?

The documentation is mostly to deal with office relationships, since it's very easy to lose track of what a WFH person is actually doing and therefore assume they're doing nothing. If you don't have that problem, then I guess you don't need to document things. I doubt your boss would mind you sending them an email saying "I just want to prove that I didn't slack off yesterday: here's what I did", though.

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
They're illegal in California, for what it's worth. You might see if you can get that portion of the contract removed; it's something you can negotiate over. Whether you'll succeed depends in part on how invested the company is in hiring you.

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 have about 10 years' experience in software now. Normally at that experience level I'd expect someone to be making a transition towards either a senior SDE role (which AIUI consists in large part of architectural / leadership engineering plus helping less-experienced devs), or looking to go into management/sales. But I've been working mostly on solo or small-team projects for the past 5+ years now (prior to that was one enterprise-scale company that I spent 3 years with, and then a small web-dev house). I'm confident in my general design/implementation skills, but I have zero leadership experience (unless you count "leading from below" with some ornery bosses...that I have). Given that I've decided to put myself back on the market, what kinds of jobs title-wise should I be looking to get into?

Also, domain-wise I'd like to work in jobs that have some interaction with scientific research and/or hardware control, those being my two existing niches. Except I have relatively little idea what the market for those domains looks like (in the SF Bay Area). Any advice or comments on that front?

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

Good Will Hrunting posted:

I can talk for great lengths about all of my 3 major projects, design choices, the new tech I've learned and stuff, but I'm still apprehensive to begin the new job process because I feel like literally every major place I look at, they ask pretty hard algo/data structures questions and I haven't reviewed them in 2+ years and don't use a lot of them on the daily.

This is me. The most complicated data structures I use on anything remotely like a regular basis are lists, hashmaps, and sets. Maybe a tree occasionally.

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

Good Will Hrunting posted:

Would this be the place to ask about sample interview questions? I'm looking at one that seems incredibly simple, but I don't understand the example they give.

https://leetcode.com/problems/partition-list/

Why would the 4 still be before the 3? Isn't 4 a larger number than 3? The same thing happens in the example given in CTCI so I'm guessing I don't fully understand their question or the concept, and that it's not just an error.

Read it carefully: all nodes less than x come before all nodes greater than or equal to. A node with value x falls into the latter category, at which point all that matters is that nodes within the category remain in original order. Since 4 came before 3 in the original list, it will be before 3 in the partitioned list.

e:f;b

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

Strong Sauce posted:

are you guys talking about external recruiters?

Headhunters, yeah. You give them your resume and then they shop it around to a bunch of places, and they get paid a commission (by the hiring company) if you get hired.

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
Three job-hops in a short timespan is pretty problematic, yeah. It's unfortunate that you've had bad luck with the jobs you've landed. My advice though is that you can't power through burnout; you'll just end up making the problem worse. So I'd suggest trying to see what you can change about your work to make it more palatable. Can you lead an effort to refactor the code and make it easier and more streamlined to make improvements? Pitch it to management as a way to improve project completion time and responsiveness. Of course they might still say no, but better to ask and be rejected than to not ask at all.

Mind, you don't want to be the new guy who comes in and says "okay cool, now let's rip it all out and start over". Make certain your pitch identifies how to get from where you are now to where you want to be, and that there's as little time as possible spent with a "broken" system waiting for you to replace some critical component. Ideally there will also be clear gains at each step along the way, and you start with the biggest pain points so the greatest gains are realized as quickly as possible.

Also, for future reference, these kinds of things are the stuff that you want to be asking about when you're interviewing somewhere. Talk to their devs and find out what their workflow and project management is like, ask what they think of the tools they're using, ask to look at some of their code (they may refuse or require an NDA, but it doesn't hurt to ask), ask for examples of the kinds of projects they've been doing lately and what their completion rate is like. Devs won't be able to directly say that they're not happy, but you can usually tell if someone doesn't like their work -- and if they aren't able to satisfactorily answer your questions, then that should be a huge red flag.

I'm not saying that you should have known better than to take the job, just that one of the things you can learn from this job (and your past other jobs) is how to avoid getting into a similar situation in the future.

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

Blinkz0rz posted:

imo these sound like the trappings of a sensitive man-boy which is kind of appropriate given reddit's involvement in the story

Jesus, dude, if that's a man-boy then you're pre-foetal.

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
More generally, it's worth realizing that just because there are starving kids in Africa (not to mention starving kids in your hometown), doesn't mean your own life experiences are somehow invalid. Dealing with a lovely work environment sucks pretty much no matter how well-compensated you are for it. And while it's helpful to maintain a sense of perspective, a sense of perspective can't fix the stressors in your life or make them go away.

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

Blinkz0rz posted:

If you've never blown a deadline, rightly or wrongly, and been chastised by your boss for it you should be posting in the Newbie Programmer thread.

On the one hand, you can have the boss that says "hey BlinkzOrz, we need to have a little chat in my office" and then figuring out a) what happened, b) why it happened, and c) how to keep it happening again. On the other hand, you can have the boss that, at the weekly team meeting, goes "BlinkzOrz, what the gently caress, you hosed up and let the entire team down. I don't want to see anyone else doing what this shitheel is doing."

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

Blinkz0rz posted:

There are plenty of other industries that pay people for what's in their head rather than how they move their muscle. Software is the only one I've ever seen that coddles its employees to such a degree. Don't get me wrong, I enjoy the perks, but I've noticed that there's a soft of a cult of the man-boy that's pervasive that I really detest.

I expect that you'll find people are more productive when they aren't afraid of being snapped at every time something goes wrong. "Coddling" your employees, i.e. treating them like decent human beings, is therefore good for business. If other industries haven't figured that out yet, then...sucks to be them?

I mean, I'm not talking about poo poo like putting foosball machines in the cafeteria and having napping rooms and so on. I'm just saying that if your manager is a dictatorial rear end in a top hat, they are a bad manager.

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

ultrafilter posted:

If there's version control, a reasonable release process, and a test environment, then it's fine. It becomes worse with each of those things that's missing.

Yeah, I'd be fine with it so long as someone more experienced had oversight over what actually happened to the system before any changes were committed to production.

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
Going to interview next week with a mid-sized but growing company. Their HR rep told me over the phone that I should give some thought to my compensation, in particular what I would be happy receiving, not necessarily what would be appropriate for someone with my level of experience. :stare: Is that, uh, a license to ask for way too much money?

For that matter, what would you say would be appropriate for someone with 10 years' experience, primarily in application development, hardware control, and scientific software (data presentation and analysis)? I'm in the Bay Area (specifically San Francisco area). My casual searches for salary information have turned up anywhere from $100k to $150k, which is kind of a broad range. Obviously I want to aim high, but I don't want to aim so high that we can't start negotiating.

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

mrmcd posted:

For the Bay Area market and that experience level, $140k-170k base, 15% bonus target, plus RSUs or options. A lot of this, however, depends on how a particular company measures experience/seniority, and how they feel you place on that scale.

I'm curious what your source for those numbers are, since I haven't seen any numbers nearly as high as $170k. I don't distrust you, but some corroboration (even just from other people chiming in) would be welcome.

Thanks for the advice and input, though! Man it'd be nice to be making $170k...

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
Thanks for the feedback, everyone! It's very helpful, in that I'll be nudging my asking price considerably higher than I otherwise would have. It appears I've been underpaid for much of the past ~5-7 years. I knew that would be an issue with working in academia...I just didn't really realize how much of an issue it would be.

Oh well, nowhere to go from here but up.

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
Ah geeze, I am not looking forward to doing toy programming problems on a whiteboard. I haven't done that stuff in, I think, eight years now. I can solve real problems just fine, it's just that all real problems in my domain only ever use lists, maps, sets, trees, stacks, and queues, really.

I'm pretty sure I remember Dijkstra's algorithm off the top of my head, but if you ask me to figure out your pet "clever solution" to a contrived problem, I'm probably gonna struggle a bit.

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'm studying for a job interview (tomorrow!). What are y'all's favorite interview questions? So far I've gone through this list, refreshed my memory of Dijkstra's algorithm, and am reading about how malloc works. I should also probably remind myself how dynamic programming works / impacts runtimes and space requirements.

The company in question does a mix of hardware control and application development. Probably not a lot of "large-scale" stuff (server farms, database consistency, etc.).

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

JawnV6 posted:

Know when a 16 or 32 bit timer in seconds or milliseconds will overflow. 16 bit seconds won't last a day, 32 bit milliseconds won't last 2 months.
This is basically just knowing roughly what 2^n is for certain n and being able to do some back-of-the-envelope calculations. It can be helpful to remember that every 10 powers of 2 is approximately the same as multiplying by 1000 (2^10 ~= 1000, 2^20 ~= 1 million, etc.). For this kind of thing, being able to approximate is fine (usually) -- there's 86400 seconds in a day but you can call that roughly 100k.

quote:

The words const and volatile aren't on that practice list. i.e. Would it ever make sense to declare something const volatile? Yes, but Why?
This one I had to look up, since I'd forgotten what volatile means. It would appear to prevent changing the value via the program code, but hint to the compiler that the value still may be changed by outside sources (e.g. memory-mapped devices).

quote:

Specifically for embedded or hardware control, tradeoffs between SPI/I2C. Which one's faster, which one uses more power, why do you end up using the worse one anyways.

This one I can't comment on as I've never written any embedded code.

Stinky_Pete posted:

Given a matrix of integers, find the submatrix with maximum sum

Are you speaking specifically about multi-dimensional matrices here, or is this a 1D array? I know of a solution for 1 dimension but am not certain it generalizes to larger dimensionalities.

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

Munkeymon posted:

He didn't specify an output size, so just find the smallest number :v:

Er, no, the classic problem is "I have an array of numbers that may be positive or negative, and I want you to find the subarray of contiguous elements of the array, that sums to the largest possible number." E.g. [4, -5, 3, 0, -2, 8, -6] would require you to return [3, 0, -2, 8]. Or alternately, you're required to return the sum, which is 9 in this case.

This is reasonably straightforward for 1D arrays once you know the trick, but I'm not really sure how I'd go about extending that to 2D or larger dimensionalities.

Adbot
ADBOT LOVES YOU

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
Had my interviews this morning. Five interviews, four of them with technical people, and I only had two whiteboard problems. In fact one of the guys spent a good 40 minutes out of the 45 talking, largely unprompted. On the plus side, that means I got a pretty good idea of what the culture and environment is like.

The two questions were: 1) sketch out an algorithm to count the number of orthogonally-connected components in this 2D array of 0s and 1s; 2) retrieve the Nth character from the sequence "onetwothreefourfivesixseven..." where N may be very large.

I did also get asked point-blank what I was looking for in terms of compensation, to which I responded something along the lines of "everyone always wants the other guy to name a number first..." I probably could have handled that a little more smoothly.

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