|
minato posted:I overheard the following last night among a bunch of ex-Facebook/Google/etc alumni: Sounds a bit crazy, but perhaps the leaders of the big tech companies just don't want to outsource/offshore as a matter of principle. Keep the main development in their own country, don't have to deal with foreign labor laws, the communication overhead, political risks, etc. I know they're public companies, but if their board feels the same way, it can be done, in spite of potential savings.
|
# ? Oct 16, 2017 11:53 |
|
|
# ? May 10, 2024 00:52 |
|
Plorkyeran posted:A tie with a polo would be pretty much peak "SV dev trying to dress up". You mean like this dude from tumblr? I'm hoping "polo with tie" makes it into Silicon Valley season 4, now, though.
|
# ? Oct 16, 2017 14:18 |
|
kitten smoothie posted:Right-to-work in the US doesn't mean you need a higher standard to fire someone. Right-to-work laws prohibit employees in unionized workplaces from being required to join a union or pay the union to represent them. States that don't have right-to-work can have "union shops," where you must either already be a member upon hiring, or you have to join within some period of time after hiring on. Corporate propaganda spreads the lie that right to work guarantees your right to not join a union even though this is already the law in all 50 states. All right to work does is free you from having to pay union dues even though a union in a collective bargaining agreement with the employer is still legally required to negotiate on your behalf and provide you with workplace protections (e.g. legal representation when you are being wrongfully fired). In other words, right to work laws just mean freeloading on a union's dime. At-will employment is the legal principle that you can be fired for any reason except for discriminatory reasons like race.
|
# ? Oct 16, 2017 14:19 |
|
chutwig posted:I am slightly surprised to hear that about Sweden, because I had understood that one of the cornerstones of the Nordic model was high flexibility in labor markets; i.e., you can hire and fire relatively freely but it's relatively low-risk for individual employees because of the comprehensive nature of the social safety net. I can't really speak for the rest of Scandinavia, but the Swedish labor protections are extensive, and that's in addition to lengthy collective bargaining agreements for engineers (and indeed most professionals). If you have a job in any non-contracting field then you have essentially tenure, terminations go by seniority and generally require between 3 and 6 months notice. The local neoliberals loathe it, of course. Teams tend to be stable, consensus-driven and long-term oriented compared to the US, in my (very limited) experience. I dunno. As an evil pinko socialist I find the notion that your compensation and hence quality of life should be equal to the value of your labor to be a lousy way of building a society and sort of fundamentally dumb, but it's very enshrined in the US labor market and the entire current corporate techie version of the land of opportunity story. Hence, high risk, high reward, as you mention. I'm not shy about taking personal advantage of that right now. Not entirely sure where that puts me in the hypocrite scale.
|
# ? Oct 16, 2017 17:47 |
|
Xerophyte posted:As an evil pinko socialist I find the notion that your compensation and hence quality of life should be equal to the value of your labor to be a lousy way of building a society and sort of fundamentally dumb, but it's very enshrined in the US labor market and the entire current corporate techie version of the land of opportunity story. Hence, high risk, high reward, as you mention. I'm not shy about taking personal advantage of that right now. Not entirely sure where that puts me in the hypocrite scale. Human nature's a hell of a thing. As long as skilled workers can make way more for writing code in the US than they can in their own country, they'll keep coming here, even if they claim to be evil pinko socialists. I'm not faulting you for making that choice; if I were fundamentally offended by the way the US economy works, I would've jetted on my Danish passport before it expired. Whether a person believes their talents are from Providence or favorable genetics, is it evil to try to maximize the amount of money you can make from those talents?
|
# ? Oct 17, 2017 00:53 |
|
Xerophyte posted:I can't really speak for the rest of Scandinavia, but the Swedish labor protections are extensive, and that's in addition to lengthy collective bargaining agreements for engineers (and indeed most professionals). If you have a job in any non-contracting field then you have essentially tenure, terminations go by seniority and generally require between 3 and 6 months notice. The local neoliberals loathe it, of course. Teams tend to be stable, consensus-driven and long-term oriented compared to the US, in my (very limited) experience. I do sympathize with the notion that quality of life should not be determined by the value of your labor, but I also don't think it is great to have your job stability determined by your tenure. I mean, poo poo, from a purely objective standpoint it's sort of an unstable system, right? Correct me if there are mechanisms to handle this, but for people new to the workforce, this means you're more likely to lose your job. If you lose your job, doesn't that make you even more likely to lose your next one? "Meritocracy" may be a farce, but "I got here first" seems problematic as well.
|
# ? Oct 17, 2017 01:59 |
|
"We should fire him soon else we cant get rid of him." Vs "seeing you are going nowhere, let's invest in your training. " Both have merits in the context of every society.
|
# ? Oct 17, 2017 06:16 |
|
anytime someone tells you ml is gonna replace some job function ask them why that job hasn't already been offshored if it's so easy to reduce it to input -> some stuff happens -> output modern ml is mostly going to make things that are of very low economic value feasible, it's not gonna replace highly paid professionals. we already do that where we can with indian and chinese labour
|
# ? Oct 19, 2017 01:11 |
|
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?
|
# ? Oct 19, 2017 11:52 |
|
the talent deficit posted:anytime someone tells you ml is gonna replace some job function ask them why that job hasn't already been offshored if it's so easy to reduce it to input -> some stuff happens -> output Some jobs cannot be offshored and yet they will probably be the first to disappear: professional drivers, fast food workers come to mind first. Those classes of jobs (which do make a sizable workforce now) stand no chance.
|
# ? Oct 19, 2017 13:51 |
|
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. 1. Get really comfortable giving and receiving feedback. Figuring this out on the job has been rough. 2. Resisting the temptation to jump into code too quickly - let folks hash it out and ask more guiding questions. Find ways to prevent yourself from being the defacto say in every conversation and having people just defer to you. (still getting the hang of it here)
|
# ? Oct 19, 2017 14:44 |
|
Doh004 posted:2. Resisting the temptation to jump into code too quickly Please, follow this advice. My entire team, even the senior engineers, have spent time working on stuff that my boss just ended up rewriting himself, on his own, without talking to us, and committing over us to master. It's frustrating and discouraging and how do we even learn this way?
|
# ? Oct 19, 2017 14:47 |
|
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. Oh, I've heard this one. I think you're supposed to kick someone's rear end on the first day so that they respect you. Seriously though, your new job is to protect your team from the people you now report to.
|
# ? Oct 20, 2017 01:07 |
|
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. I got an offer to go IC -> manager, so I went and interviewed all the engineers who'd made the transition to see how it felt. The common patterns in their answers: - "I never get to code anymore. The plan was that I'd spend X% of my time coding, but it never happened. Managing people is a full-time responsibility." - "My job satisfaction criteria had to change. Before, I was proud of my code. Now, I'm proud of the people I've developed." - "Managing people is a totally different skill with almost no overlap with engineering. People can act irrational, subversive, aggressive, etc. Each person's issues may need to be solved differently. This can be frustrating." - "Focus on developing people, not software. Your job is to make sure your reports are productive, happy, & focused on the right thing. Let the Product Managers focus on software delivery."
|
# ? Oct 20, 2017 01:13 |
|
Good Will Hrunting posted:My entire team, even the senior engineers, have spent time working on stuff that my boss just ended up rewriting himself, on his own, without talking to us, and committing over us to master. It's frustrating and discouraging and how do we even learn this way? This x 100. I had a boss who was otherwise the nicest guy in the world and totally great to have a beer with. But he also had this unbreakable habit of logging on at 1am, making huge changes that were poorly thought out because it was 1am. Then he'd go punching that straight into master, bypassing any kind of code review, because he could say so. Don't be that guy.
|
# ? Oct 20, 2017 01:52 |
|
Thanks for all the advice. It mirrors my instincts pretty closely which makes me think maybe I won't be terrible in this role.
|
# ? Oct 20, 2017 02:31 |
|
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. I was just listening to this podcast yesterday in which Ron Lichty had a lot of interesting things to say about this: http://www.se-radio.net/2017/10/se-radio-episode-306-ron-lichty-on-managing-programmers/
|
# ? Oct 20, 2017 06:21 |
|
Is it poor form to ask a recruiter exactly which company is hiring and what market/field they are in even if you’re not going to take the job? A recruiter let me know about a local position and even though I’m set, the company sounds a bit similar to one I’ve already heard of and maybe even worked at before...so I’m curious.
|
# ? Oct 20, 2017 17:19 |
|
Pollyanna posted:Is it poor form to ask a recruiter exactly which company is hiring and what market/field they are in even if you’re not going to take the job? A recruiter let me know about a local position and even though I’m set, the company sounds a bit similar to one I’ve already heard of and maybe even worked at before...so I’m curious. You can ask all you want but their goal is to not tell you until you've sent them a resume to forward on so you can't contact the hiring manager at the company directly.
|
# ? Oct 20, 2017 17:26 |
|
Fair enough, I guess.
|
# ? Oct 20, 2017 17:40 |
|
Pollyanna posted:Is it poor form to ask a recruiter exactly which company is hiring and what market/field they are in even if you’re not going to take the job? A recruiter let me know about a local position and even though I’m set, the company sounds a bit similar to one I’ve already heard of and maybe even worked at before...so I’m curious. I've found asking if it is a particular company may get a yes, as opposed to asking who it is.
|
# ? Oct 20, 2017 18:45 |
|
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. 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.
|
# ? Oct 20, 2017 22:23 |
|
Blinkz0rz posted:For folks who have gone from IC to management, two questions: 1. turned down the position 2. scheduling. i went from 3 or 4 meetings a week as a team lead to 20+ meetings a week as a manager. it was overwhelming and i struggled to make effective use of my non-meeting time
|
# ? Oct 21, 2017 02:34 |
|
wins32767 posted: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. This is the best advice I have seen in ages and gives me hope for humanity.
|
# ? Oct 21, 2017 12:52 |
|
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.
|
# ? Oct 21, 2017 15:40 |
|
Managing upwards and laterally is generally more work and more important than managing your team.
|
# ? Oct 21, 2017 16:19 |
|
ultrafilter posted:Managing upwards and laterally is generally more work and more important than managing your team. That seems like a great way to get politicked into unemployment. I wouldn't wade into the management world even if I was given a million dollars (okay, even then, but only if I got it in advance and I could keep it afterwards).
|
# ? Oct 21, 2017 17:09 |
|
ultrafilter posted:Managing upwards and laterally is generally more work and more important than managing your team. Please define more important.
|
# ? Oct 21, 2017 17:11 |
|
Good Will Hrunting posted:Please define more important. A well-built team should be able to pursue projects without much of any involvement from their manager beyond high-level goal setting. Where they'll run into problems is when they need to coordinate with other teams, purchase outside equipment/software/contractors, or have a VP decide to reduce team headcount, or even nix the whole project, because the team don't have enough visibility (i.e. the VP doesn't realize what they're getting accomplished). If you imagine the team as being a program, the manager is the interface / abstraction layer between that program and other programs (teams). Most other things that managers do can be done by someone else -- a tech lead for design and engineering problems, a mentor for career development, HR for disputes, et cetera. Typically managers also end up doing at least a few of those other jobs, but the "interface between teams" job is consistently a managerial job.
|
# ? Oct 21, 2017 17:30 |
|
Eh this is all just semantics around titles it seems to me. I see a team lead as a manager.
|
# ? Oct 21, 2017 17:48 |
|
Elaborating further, I want my team lead to stand up for me when I say we need more clearly defined requirements from product or business owners. I want them to at least listen to my ideas when I say the process we follow is not working for my team and here is (X, Y, Z) we can do to make sure things go smoother or quicker. My team lead should do code reviews and if I have a really pressing question around design that could impact more than just a small area of the codebase, take 15 minutes out of their day to discuss it. Whoops reply is not edit. Anyway, it's just clear to me that my team suffers from two problems. The first is lack of a true tech lead. Second, nobody to hold product accountability for lack of any sort of clearly defined roadmap. We don't do agile. We don't do stand ups. We don't do grooming at all, let alone formally. Good Will Hrunting fucked around with this message at 17:58 on Oct 21, 2017 |
# ? Oct 21, 2017 17:52 |
|
Team leads don't handle HR issues or do performance reviews. They're also not generally working with the relevant members of senior and middle management on how the projects their team works on fit in with the company's strategy. That's the distinction.
|
# ? Oct 21, 2017 17:59 |
|
Okay, that makes sense. See, I've never had those concerns separated from my team lead and manager until 3 weeks ago when we hired a tech lead.
|
# ? Oct 21, 2017 18:04 |
|
Good Will Hrunting posted:Elaborating further, I want my team lead to stand up for me when I say we need more clearly defined requirements from product or business owners. I want them to at least listen to my ideas when I say the process we follow is not working for my team and here is (X, Y, Z) we can do to make sure things go smoother or quicker. My team lead should do code reviews and if I have a really pressing question around design that could impact more than just a small area of the codebase, take 15 minutes out of their day to discuss it. At my current company we have TLs that more or less do that, plus a lot of planning overhead for the team, etc. One my my teammates compared being a TL to being a "department chair" in academia, in that it sounds very prestigious but mostly it's the person/people dealing with a lot of administrative issues making sure grants get written, teaching assignments are squared away, etc. We also have explicit people managers though. Your TL isn't the person you report to, they don't have formal performance review conversations, decide compensation, headcount allocation, etc. Managers also spend little to no time coding however, and rarely make technical decisions. Their job is to be actual managers, not engineers, and especially not ~~"10x superheros~~" pushing to master at 1am. (TLs aren't that either because nobody should be doing that).
|
# ? Oct 21, 2017 18:06 |
|
I have a VP of engineering who handles three teams "manager" role and on top of all of that has been my team's point of contact for anything tech lead or spec related since Feb. And one senior engineer who is smart but not given lead responsibility and isn't much more apt at our stack than myself.
|
# ? Oct 21, 2017 18:11 |
|
This kind of formal structure isn't all that important at smaller companies. It's the best answer we have for how to manage larger organizations, though.
|
# ? Oct 21, 2017 18:13 |
|
ultrafilter posted:This kind of formal structure isn't all that important at smaller companies. It's the best answer we have for how to manage larger organizations, though. My team is small and we have two other small teams but my team especially feels the lack of a tech lead or interface to product, mainly to hold them accountable for not providing us concrete specs or answers to things that let us execute on time.
|
# ? Oct 21, 2017 18:16 |
|
ultrafilter posted:This kind of formal structure isn't all that important at smaller companies. It's the best answer we have for how to manage larger organizations, though. I don't think smaller companies wouldn't benefit, but most young startup sized companies tend to either have permanent organizational chaos, and/or can't afford enough heads for people to be doing distinct roles. The upshot of this is it's pretty common for people to be doing these jobs very poorly or not at all.
|
# ? Oct 21, 2017 18:20 |
|
ultrafilter posted:Team leads don't handle HR issues or do performance reviews. They're also not generally working with the relevant members of senior and middle management on how the projects their team works on fit in with the company's strategy. That's the distinction. Where I work, that is incorrect and "team lead" is a specific managerial title. For what it's worth, I really disliked having team leads separate from management myself, because it creates what is essentially an office space/"dotted line" boss and causes confusion over who is the decision maker. Do you follow your team lead or the person who decides how big your bonus is when there is a conflict (or even an ambiguity)? Do you now need a bunch of RACI charts to reference to decide who to listen to for what? Or will all decisions be done by what is effectively a small committee (manager, team lead, product owner, et al.)? It's just a lot messier than a straightforward hierarchy, and though some people claim it's the "agile" way of doing things, it only ever seemed to hurt the organization's results. As a team lead, I love having a director as a boss who has a VP boss reporting to the CTO, and having straightforward lines of communication, responsibility, and decision making. Before being a manager, I also have loved when I have this setup. The worst place I ever worked (organizationally at least) had a separate person for team lead, architect, engineering manager, product owner, product manager, project manager, program manager, scrum master, and process manager. The team lead reported to the engineering manager and the product owner reported to the product manager. Architecture, engineering, and product were separate verticals that didn't combine until the VP level. Process was a detached vertical but process compliance was a customer requirement. Try getting someone to make a decision that sticks in that environment.
|
# ? Oct 21, 2017 20:07 |
|
|
# ? May 10, 2024 00:52 |
|
The distinction in my case is between being an IC and being responsible for other people's contribution. There's an expectation that while design and implementation will be part of the job, managing career development, labor planning, hiring, and managing outwards will be the primary focus. My takeaway from this discussion is that organization, delegation, time management, and the ability to manage upwards and outwards are the skills I should work on.
|
# ? Oct 21, 2017 22:32 |