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
wins32767
Mar 16, 2007

Blinkz0rz posted:

Management's job is to make you do more for less. Always.

You need to a new place to work. I tell my folks to go home if they're putting in more than like 41-42 hours a week. Don't get me wrong, from time to time there may be a long day or two if there is a fire, but I do my best to spread the pain around and give comp time to make up for it. Long hours are terrible for productivity, effectiveness and morale.

Adbot
ADBOT LOVES YOU

wins32767
Mar 16, 2007

Pollyanna posted:

I'm afraid of burning out early and I really want to be able to branch out and do different things, and I'm worried about this putting that in jeopardy. How do I prevent getting crappy jobs like these given to me in the future?
Two points:

You're always going to have to do some amount of crappy work. So the first thing I'd tell you is learn how to find value in the crappy work you're doing. Is there some nifty tool that is tangentially related to the problem that you could try to use to improve the process? Can you make a solid business case for switching off of this tool entirely? Your mindset about the work is responsible for a good chunk of your misery.

The second piece depends on how valuable the work is to the business. Is this something where if you screw it up real dollars are on the line or is this just a "this needs to get done" type of project? If the former, you have it because your boss trust you. You can leverage that to get interesting projects down the road. If it's the latter, it may mean that you just drew the short straw or it could mean a lot of other less fortunate things. It's hard to say with what you've provided.

wins32767
Mar 16, 2007

Pollyanna posted:

I don't resent the work per se, or anyone who gave it to me; it's just that I'm running into a whole lot of frustrating roadblocks and inefficiencies that make it a chore to work with and that's leaving me with a bad taste in my mouth. It is a pretty important fix/upgrade (read: $ on the line), so it will certainly get done, and I'll make sure it's done well - but holy poo poo do we need to move onto another system pronto.

Ultimately, I'm annoyed at the roadblocks and frustrations with the lovely-rear end server architecture as opposed to anyone or anything in particular. I understand and appreciate the level of trust placed in me to handle this, but man, I can't wait to get onto a more engaging feature crew (or at least on a project that isn't a huge mess).

Being pissed off that you're doing bad or inefficient work is a good quality to have and it may be the reason you got the project in the first place. Your boss may be hoping that you figure out how to clean the mess up as part of the process. If you really want to show value, put together a business case about why you should move away from the current mess and include some different approaches:

"Our current deployment mechanism creates several key risks to the business. For example, in the case of an urgent security fix needing to be applied...

These issues combine to impose an ongoing of X developer hours/days per year as well as the unmitigated risks listed above.

In order to improve the situation, there are several different options..."

Obviously adjust the tone/content to fit your job.

wins32767
Mar 16, 2007

My former boss called me today and offered me a job as a developer in a smallish (~200 person) company. When she left my current company (a megacorp) 6 months ago, I was promoted into her old position. After a rocky adjustment period, I've really started to enjoy being a manager and I'd like to continue on that path over the long term. However, this new offer would be for substantially more money (30-40%), in a city I want to relocate to, and would lead to a management job in 6-12 months provided the company continues on it's current growth trajectory. It sounds like a great offer assuming the company does well, but my concern is if it fails to continue to grow. Am I wrong in thinking that going from manager back to developer after 6 months would be an issue if I wanted to find another management job in a year if things don't work out?

wins32767
Mar 16, 2007

Skuto posted:

Unless you're clearly the oldest among your peers, and you feel the step back at this point in your career is problematic, the upsides just seem overwhelming here.

That said, if you can get one such offer, maybe you can find more, including one where you stay in management. It sounds like you were actually pretty happy where you were and weren't shopping around when this offer came, so figuring out where the extra 40% comes from may be interesting.
I'm 36, so I feel like I have a few more years before I get into the danger zone age wise (though that may be optimistic).

A decent chunk of the 40% is due to cost of living differences but I'm well aware I'm getting paid substantially less than market for a variety of bad, historical reasons. My current location is quite rural and has maybe 5 lead engineer/manager positions that open up a year so there isn't a lot of room for moving between jobs if I stay where I'm at. When I've looked to relocate to a major market in the past I ran into problems where about half of the companies didn't want to deal with anyone who wasn't local so that's another upside of taking this new position.

But aside from the pay problem (which my current boss has committed to addressing) I am reasonably happy with my present gig. I have a great team, I'm very well regarded by upper level management and we're getting interesting and strategic projects. I think in the long term, both my current job and the new offer have good upsides, the offer is more of a high risk/high reward sort of situation rather than grinding my way up the ladder over the next 5-10 years at my current company.


Doctor w-rw-rw- posted:

On the flip side, if you're enjoying your situation as a manager, that's worth a lot. There's a lot of risks and maybes in moving to a new city and hoping for management in 6 to 12 months if the company grows. Especially because it's growing.

Hard decision. Could depend on how much you want to move, how risky you think it might be, how stable the business is, and whether you're willing to face the possibility that you end up not being a good fit – and get fired after moving, before your apartment lease is even close to done.

Well, my former boss and I had a really good working relationship (we worked together for 4 years) and she thinks I'd be a very good fit. They're also well funded and they have decent number of customers so the risks there are pretty low. My main concern is transitioning back to doing daily development work after a reasonably lengthy hiatus (I was getting pretty burnt out when I transitioned into a leadership role) and not continuing to grow my leadership skills.

wins32767
Mar 16, 2007

The Witness posted:

For all the older programmers here, what would you consider to be the essential skills that helped you throughout your careers over the years? Is there a specific combination of skills or habits that proved more rewarding than focusing on other skills?

Really understanding business value is #1 on the list. Meet with and listen to pretty much everyone you can in your company and customers. Sales, accounting, customer service, support, everyone. Listen to their problems and figure out how your projects can solve them. The best designed and written software in the world can be worthless if it solves the wrong problem. Understanding business value also allows you to understand the problems your boss has and lets you help solve them which makes you indispensable.

Clear communications and organization are probably #2 and #3.

wins32767
Mar 16, 2007

Blinkz0rz posted:

Imposter syndrome doesn't go away, you just learn how to handle it better. I'm 10 years deep and I still sometimes feel like I'm out of my depth. But you squash it down and keep plowing forward.

Moral of the story: don't give up.

Yeah, this. It's not that I feel omni-capable, it's that I've mostly stopped giving a drat about the fact that I'm inevitably going to do things imperfectly. Just do it and if it doesn't work, adjust and try again.

wins32767
Mar 16, 2007

Working Effectively With Legacy Code is a good place to start.

wins32767
Mar 16, 2007

Also how many people are there currently? Are you in a management position or team lead? Who said you'd have freedom to make sweeping changes and do you think they'll back you up when you'll hit the inevitable resistance that comes with change?

The answers to those things are going to be really important in determining how effective you'll be. You probably also want to read Switch.

wins32767
Mar 16, 2007

Skandranon posted:

Most of your problems are going to be political, not technical. Do you want to be a politician?

It's not being a politician, but it's definitely going to require solving social problems more than technical ones.

wins32767
Mar 16, 2007

Blinkz0rz posted:

Confirmed yesterday that this next sprint will be my last with my current team. On 11/1 I'm moving to manage my own engineering team.

For folks who have gone from IC to management, two questions:

1. What was the thing you wish you had done first?

2. What was the most important skill you needed/wished you had during that transition?

I'd generalize the responses to #2 to learn how to effectively delegate. It's taken me a few years to really get it down, but for literally everything that comes across your desk you should be thinking "Is there a way I can give this to someone to do to help them grow?" and "What kind of support should I be giving (if any) to the person I delegate this to?" Needing to keep things is a sign you haven't done enough to grow your people.

wins32767
Mar 16, 2007

Good Will Hrunting posted:

Agreed, but I feel like a big issue with executing on that is higher level execs breathing down the lead's neck. A lot of managers at team lead level (versus VP, branch lead, etc) get more pull from their superiors that might cause them to overwork and under-delegate.

It's not a black or white thing, but unless you're likely to lose your job entirely or it's a screamingly high profile issue, it's usually better to set your team up for being amazing in the long term, even if that means you have to eat a few poo poo sandwiches in the short term. Nobody is going to remember that your team was a week late six months ago if they are hitting their marks consistently today.

wins32767
Mar 16, 2007

good jovi posted:

There’s no problem liking your boss and I really feel sorry for people who don’t. But if they are anything less than excited for you getting a better job, then gently caress ‘em, they were never your friend.

Yeah, when my folks leave for better jobs, I'm happy for them. I want them to grow, be happy, and make more money. One of the shittiest things about being a manager is knowing you have someone who is sticking around when that's hurting them professionally or when they're wildly underpaid because you only have so much raise budget. If your boss is really as good as you think, they'll be happy to see you getting what you need (and probably sad because they'll miss you).

wins32767
Mar 16, 2007

Get some data together to show how much faster bugs get fixed when filed with the right amount of data versus incomplete. That'll make the buy in a lot easier and help you demonstrate that you're on the side of the customer (management).

wins32767
Mar 16, 2007

DONT THREAD ON ME posted:

But I think it's the right way.
What are you trying to optimize for?

wins32767
Mar 16, 2007

TooMuchAbstraction posted:

I guess I don't really have a question as such, but if any of y'all have any opinions or insight, I'd like to hear it.

I was in a similar situation last year. I had been doing software in the life sciences space for 7ish years but I was burnt out and demotivated by bad leadership. I ended up taking a somewhat smaller role for more money and a hefty set of options at an awesome company with great people that was growing like crazy and heading to IPO but in a generic business domain. I lasted 7 months before I took a pay cut and left what was likely to be a mid-six figure payout to get back to a mission I could get excited about.

You gotta decide what gets you out of bed and into work on a bad morning. For me, surprisingly, the mission part of things turned out to be non-negotiable.

wins32767
Mar 16, 2007

School of How posted:

The fact that you have the luxury to reject anyone at all proves my point that the industry is oversaturated. Imagine a market with 10,000 open jobs, and only 5,000 programmers. The best companies like Google and Amazon will get lots of applications and will be able to reject some candidates, but the remaining 99% of companies will likely either get a single application, or no applications at all. Those companies either hire the one person who applied, or do without a developer. They don't get to reject anyone even if they desperately wanted to.

That's not the only possibility. If you try I'm sure you can imagine some cases where hiring one person would lead to the loss of other people thus resulting in a net loss in total capacity.

wins32767
Mar 16, 2007

evilweasel posted:

yeah let's take a random example, who we'll call !!!!Woh. !!!!Woh is not a very good developer, he's probably worth maybe half of an average developer. !!!!Woh is interviewing at Sensible Development, which has ten average developers. the market for developers is so thin that !!!!Woh is the only candidate Sensible Development can hire: it's !!!!Woh or nothing.

Even if !!!!Woh is very pleasant, some developers only want to work with people of a certain skill level. Others may want to get a certain amount of coaching and adding someone who needs a lot of help will reduce the attention that they get.

wins32767
Mar 16, 2007

School of How posted:

How do you know that information is truthful? How do you know that google isn't just paying the owners of levels.fyi to make it look like engineers actually make that much? WHy do you just trust a number posted on an internet website? Are all numbers posted on websites trustworthy?

Even if those figures are true, do you really think a developer making a quarter a million dollars a year is actually 2.5 times more productive than a developer making 100K? 5 times more productive than a programmer making 50K? I doubt it. Those salaries, if true, are completely illogical.

When I was at Oracle, they gladly converted top performers from India to US based and would give them 4-6x bumps in comp as part of the relocation.

wins32767
Mar 16, 2007

School of How posted:

If you're rejecting so many people, then you really don't need a new developer. If you truly needed a new developer, you'd actually hire one instead of wasting everyone's time.
I've done engineering hiring for 3 growth phase startups over the last ~4 years and for every one of those companies we made offers to everyone we found who was qualified (and many people who weren't but we thought we could train). Depending on the position, we'd need to interview between 8 and more than 20 candidates to find 1 person we were willing to make an offer to. It's not because those companies didn't badly need engineers, it's that most people trying to get engineering jobs are just not qualified.

wins32767
Mar 16, 2007

School of How posted:

This is a ludicrous statement. Whether it's true or not you have to admit it's completely ludicrous. This is something I've heard many people say, but I've never seen anyone prove it. I've never heard a hospital manager say that the majority of doctors they interview can't use a stethoscope. Or a manager of a mechanic shop say that the majority of mechanics they interview don't know how to hold a screwdriver. Or a newspaper editor say that the majority of writers they interview can't write above a 1st grade level... I want someone to video record an interview with one of these programmers that don't have basic abilities. At the very least there has to be more to the story than what is lead on.

Software jobs are now very high paying (unlike journalists) and there is no certification (unlike doctors or mechanics). This attracts unqualified candidates in droves. As an example, I don't think I've ever hired anyone from an inbound application. At one of the companies I worked for (which had a hiring brand of paying top dollar) we ran the numbers and there were 0 successful candidates out of ~600 inbound applications in around a 18 months. Most of them get filtered out at the resume or recruiter screen stage but some of them are at least somewhat proficient; a couple of them even made it to on-sites before we said no.

Another large proportion of candidates that get filtered out are engineers who can write code, but can't write good, maintainable code or can't do it beyond the level of a method. I've failed out multiple candidates with >10 years of experience who couldn't come up with reasonable ways to divide responsibilities between classes on pretty basic problems or couldn't talk intelligently about a system of reasonable complexity that they'd built. If you've worked for 10 years and haven't learned how to design classes the odds are high I won't be able to train you into it.

Those two make up most of the technical skill failures, but communication problems, unwillingness to listen to other people's opinions and accept feedback, and generally being an rear end in a top hat also disqualifies another substantial fraction of candidates.

wins32767
Mar 16, 2007

Having managed (and been an IC) both inside and outside the startup bubble, I'd agree that it's a wildly different world in IT type roles versus startup product companies. Cost center vs. not and growing quickly versus not really change the managers structural incentives in favor of the employee's pay within the tech hub bubble.

In startup land, we have a hard enough time getting talented people in the door to dick people over at the reference check stage. I mean, poo poo, my current bonus is directly tied to filling my raft of open positions quickly (IOW I get more money the less time/amount I'm under my allocated headcount) and not at all tied to the amount my team makes. Certainly the company as a whole is incentivized to control pay, but as a hiring manager I lean on my recruiting team to bump offers up so we can close good candidates. The CEO is the main brake on offer packages.

The only structural factor that incentivizes me to drive down offers at my current job is balance/fairness with existing employees. If I have someone with 5 years experience and the new person with 5 years experience wants a lot more than my existing person, I'm not going to offer much more than my existing person is making plus what I think I can get them during the next raise cycle. That said, it's an inconsistent downward force on wages as I've used big pay gaps between new hires and existing folks as a lever to get big raises for people at prior jobs.

wins32767
Mar 16, 2007

prisoner of waffles posted:

This smells funny to me. Usually a manager who hires is not given recruiter-ish incentives, right?

It's attrition and hiring based. If I stay within 10% of my allocated headcount for the year it adds to my bonus. If I have a raft of attrition or don't fill my new heads I won't get paid for that. Given that I have a bunch of new heads and 0 attrition, the equation is dominated by filling those open slots.

I also have delivery, quality, morale and compute costs related goals that factor into my bonus so I can't just hire a bunch of schlubs (or really now allow my managers to do that) because the rest of the goals would go to hell.

wins32767 fucked around with this message at 19:43 on Dec 6, 2019

wins32767
Mar 16, 2007

lifg posted:

Are these normal parameters for a manager’s bonus?

At least in my experience there isn't really a standard. I've had bonuses based entirely on how the company is doing, bonuses where my boss got a pot of money and assigned my share of it based on his or her judgement, bonuses where the head of product and I got pot of money for our own bonuses and those of our teams and had to divvy them up (which is a story unto itself), and now this one.

wins32767
Mar 16, 2007

gbut posted:

Seriously, not trying to be a jerk, but does anyone write sql statements by hands these days? I feel pretty confident having spent my career working with relational dbs, manual queries way back 100% of the time, and I still went "oof" when I opened the fiddle. I'd have to Google to remember some deets that are not party of my daily use, though I probably can cobble up a solid pseudo-schema for a specific business use need in a heartbeat.

This would be a point where, if I was interviewing and got presented this, I would probably think your company cares more about syntax/gotchas than concepts.

In a data engineering role it's really important to have mastery of SQL. Due to a combination of poor monitoring, vacations, and a junior engineer who had a just a basic understanding of SQL we lit $37,000 on fire last month.

wins32767 fucked around with this message at 02:03 on Sep 25, 2020

wins32767
Mar 16, 2007

FMguru posted:

My understanding of bonuses is that they are good for:

In my experience, every single management/exec level conversation about bonuses comes down to either payroll flexibility or aligning incentives (if the company has a great year, so do you). This is heavily weighted towards startups, but I've never heard any of those other things been mentioned when talking about bonuses.

wins32767
Mar 16, 2007

Assume that the processes all are barely functional. Also watch out for engineers who know every line of code and feel a rightful sense of ownership over everything. They're likely going to have a hard time letting go of that, so be gentle and patient since they are really valuable to have around as the company scales.

wins32767
Mar 16, 2007

TooMuchAbstraction posted:

Do you want to go to game dev because you find games to be meaningful, or is that simply the first art form that comes to mind that you know people make a living at? It sounds to me like what you're grappling with is some form of existential angst / lack of "meaning" in your life. There's plenty of ways you can make the world a better place while continuing to work in software development. Charities need software, so do companies that do e.g. clean energy, carbon capture and storage, medical device development, fundamental scientific research, etc. They often don't pay as well as industry software, but gamedev isn't exactly a path to riches either.

Yeah, I'm hiring right now for a company that builds software for social workers. One of our customers has lowered homelessness in their county by almost 30% since adopting our software. That definitely scratches my meaningfulness itch.

wins32767
Mar 16, 2007

Cheesus posted:

Any references or tips for interviewing a new manager from a managed perspective?

We did this a couple of years ago and we collectively made the worst possible hire in any measurable metric. Said individual left two weeks ago and we're on the hunt to replace them, but I feel like if the same person came through again, I wouldn't be any better equipped to weed them out.

I'm very experienced in hiring other developers, but based on this one data point, crap at interviewing managers.

I've asked about :
- What their high level management philosophy is. This needs to be a conversation where you ask about how that worked in practice, but it gives you a good signal about who to not move forward with.
- Employees who have had performance problems and what they did to resolve the issue.
- How they decide what to keep and what to delegate
- How they manage priorities, both their own and their teams
- What the highest performing team they've led (or been a part of) looked like and what made it so successful

Then we also did our standard engineering stuff, but aiming at a senior (5-8 year) level rather than principal.

wins32767
Mar 16, 2007

I think a lot of the difference in opinion about how deep to know your tools comes from the different flavor of roles that exist for engineers. If you automate business processes and knowing how a trie works is vastly less important than having a deep understanding of the domain. Similarly, knowing your users and their needs in a product development type role is vastly more important than being an expert on how libraries get loaded in your language of choice. There are also roles where if you don't know all the details about how the query engine executes queries you're going to light tens of thousands of dollars on fire. That's not to say that all of those skills aren't useful in most roles, just that the balance of relative importance shifts.

A good chunk of being effective at job searching is being clear about what kind of job you're good at and looking for companies who value that sort of thing and a good chunk of being effective at hiring is being clear what kind of skills are important to your particular role and making sure to only screen for the things that are important.

wins32767
Mar 16, 2007

bob dobbs is dead posted:

and a good portion of the completely merited complete lack of trust between employers and candidates is that this information and the nature of the role is very seldom given even close to honestly and even more seldom used to decide to apply to places or not

lemons as far as the eye can see. lemon companies, lemon candidates

Part of it is that hardly anyone is out there saying this enough so I think a lot of people don't really understand that it's a thing. It took me well more than a decade into my career (and being a hiring manager) to really understand that software engineer as a title hides a tremendous amount of complexity. The rise of back end/front end/data/fullstack/embedded has been a good start but doesn't go far enough to really help with that differentiation.

wins32767
Mar 16, 2007

TheCog posted:

I've gotten offers for 150k in Boston with 4-5 years experience, so 110 is low. The range I've seen when interviewing is roughly 130-160.

Yeah, 140k seems to be about where I'd expect for a senior title. The market has been really moving the last 3-4 years.

wins32767
Mar 16, 2007

100 degrees Calcium posted:

tldr; I've spent way too much of my career coasting and making excuses for it. Now that I'm awake to how I've limited myself, I'm looking for a way to plan for my growth that is both meaningful, sustainable, and realistic.

The market is so hot right now that you can get people to pay you to do a normal week's worth of work to learn on the job. You may want to consider doing that instead of pushing yourself to grow at a place that makes it hard to do that.

wins32767
Mar 16, 2007

100 degrees Calcium posted:

lol God drat, I expected to be told to suck it up and hit the books or something. The internet is so full of people talking about how you gotta throw yourself into developing your skills all the time to even be a passable programmer.

I just started this position so I'm not going to bail right away, but maybe it's time to start thinking about how I can get a job somewhere that isn't lame.

The skills you need to develop as a manager are very, very different than those required to be a good engineer and if you're like most new managers, it's going to take you a year or two to get decent at it. It's going to be very hard to improve on both fronts at the same time and if you're in a leadership slot, you owe your team to do that as well as you possibly can at leading them versus getting better at writing code. That's not to say that if you're trying to get the team to adopt good testing practices you can't figure out how to be more effective at that yourself, but your primary job as a manager is making your team successful.

wins32767
Mar 16, 2007

100 degrees Calcium posted:

I appreciate your perspectives. I have noticed that my team is a lot more motivated to experiment and are sharing their findings more openly since I took up this position. I'm hesitant to ask them about it directly, for fear of appearing to be fishing for compliments or putting down our old boss, but I can't help but wonder if all we really needed was to have a team lead that isn't adversarial and closed-minded.

I have to admit it has been a rocky start for me. When I took this position, I had my team's support because I indicated that I'd be encouraging more efficient and effective work practices. But then I started and I got slammed with so much "higher pay grade" nonsense and I haven't had time to fulfill my mandate. I think I might have to start delegating more; hopefully they'll be satisfied that I'm giving them the freedom to do the job the right away, instead of fixing everything myself personally.

100%. I often tell my new managers they should write no code at all for the first 6 months. Prioritization and effective delegation are the things that make or break managers, it's good to see that you're already picking up on that!

wins32767
Mar 16, 2007

asur posted:

If you're quoted a number, it's almost certainly total comp. It makes no sense to quote salary only and not even clarify.

In my experience it's always just base when they just quote one number. It's usually also total comp (or a newbie at giving offers).

wins32767
Mar 16, 2007

Queen Victorian posted:

I guess it goes to show why diversity in tech (or lack thereof) is such an insidious issue - even if you're a perfectly unbiased hiring manager, you're still subject to the whims and biases of all sorts of different players in the tech hiring pipeline if you don't have the time to personally process/vet every resume that comes your way.

I spend a ton of time working with my recruiting team on this because if they just want to get positions closed quickly (usual KPI: time to fill), I'm just gonna white and Asian men to screen. If that's all I get, hard to do any better than the rest of the industry.

wins32767
Mar 16, 2007

venutolo posted:

I have my annual review coming up soon and want to check how my salary compares in my city. Some short Googling lead to a number of sites, like Glassdoor, et al. I found that PayScale and BuiltIn asked me to provide much more context about my job, and I'd hope that would lead to more relevant salary data for me. Are there any other resources I should look at?

The market has moved a ton lately, so there isn't a lot of solid data out there right now. We're hiring anywhere in the US for 25% above what we paid in Boston at the start of the year.

wins32767
Mar 16, 2007

It’s valuable for startups because you know what a successful company feels like. A whole bunch of early phase people have never actually been part of a success and don’t know what product/market fit is like and how to handle growth. The more people who you have at a company that have been at a successful scaling startup when you start to scale, the less horribly painful bumps you’ll get hit because hopefully you’ll say things like “our build system is awful, let’s fix that” or “why is everyone in the company making changes to these three methods every day, shouldn’t we refactor?”.

Adbot
ADBOT LOVES YOU

wins32767
Mar 16, 2007

ultrafilter posted:

They don't have a great reputation. Even as recruiting firms go, they're pretty bad at trying to match applicants and positions.

They're the only recruiting firm I hang up on if they call me. Everyone else I'll at least listen and be polite to.

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