Practically speaking it's not so different than how it is currently though (except maybe lower CoL areas in the same country), it's very difficult to have FTE's in foreign countries, I am in a position to feel this very much right now- either you have to do very complex accounting, become a multi-national or they have to be hired as contractors.
There's still many barriers to it being off-shored, and the kinds of companies that would do that aggressively are looking to replace you anyway.
Have you looked into other services such as "remote.com" to handle international accounting/legal?
I am curious but from the employee's perspective.
They make it a lot easier honestly, walking you through the various hoops, but you are still a contractor which means you must handle your own employee benefits (healthcare etc), social contributions, submit your own taxes (in countries where this is not commonly on the employee this is annoying) and ensure that you are set up as some form of business entity yourself.
In my case that would mean either setting up a one man company or being a “sole trader” under Swedish law.
for PnL purposes as an employer, you would be considered a contractor.
How many people were all excited about a "random" guy in a small town in Sicily creating a key-value database a few weeks back?
https://news.ycombinator.com/item?id=35871462
That's globalization, folks.
The frupidity used to be a huge sore spot, but being honest, is no longer a part of the culture.
Sure, there are no catered buffets or massage chairs, but the old inflexible rigid frupid systems are all gone. Engineers get top of the line M1 Macbooks, nice monitors and good chairs. The desks are all adjustable sit/stand, not doors. You can get and expense whatever software you need. And yeah you gotta fly coach but nobody is going to bite your head off for expensing some peanuts from the mini bar at your hotel.
Only to be then shipped a base M1 Macbook with 8 gigs of RAM anyway!
Mid 2022, my (brand new) manager received a rigorous scolding for holding a team event where the team (spread out across East Coast and West Coast) met in a single location (Seattle; where majority of the team was) for a couple days of team building (i.e., working in the same office, going out to lunch).
Frupidity may not be the correct word. Perhaps miserly is more appropriate.
also, just to make sure it's clear to anybody reading about remote vs non-remote. remote doesn't mean no meatspace meeting ever allowed. remote team members are not under chess king rules. we did meet IRL. for some jobs it was just 1 week in 10 months. (thanks COVID) but otherwise it can be a lot more. (1 week every quarter kind of makes sense, but so does anything that members are up to - especially if they live close to each other.)
From the abstract: Findings show that early career artists have the least social capital, established artists have the most, and late career artists begin to lose social capital unless they actively maintain it.
It is clear who is stopping them from working from home, but who is stopping you from going to the office?
This happened to me once. The team was in NYC, and I wasn’t so I was coming to the office uselessly. I do like coming into the office since it’s easier to turn onto and way from work with travel as a context switch but that aspect made it worthless for anything else.
Please take a deep breath and consider the extent to which your unwillingness to even acknowledge the existence of people who don't share your opinion may harm, rather than help, your cause.
> People want to work in the office with other people. If they go and end up working alone because their team is remote, then there is no point.
The author would crave for others to be present to satisfy their whim of not only wanting to go to work, but also dragging others reluctantly there. It's worthy of a walkout
At the least, you have to reorganize teams so the office staff have other team members who are also in-office and not remote.
If you can’t do that then you are better served with going all remote in my opinion.
This is not a zero-sum game. It is possible for everyone to get what they want.
At overall software-industry level? Yes.
At individual company level? It is much better to have uniform policies for the entire org. Either be completely remote, or completely in-office, or if you want hybrid then mandate the days when everyone must be in office.
Why? There are ample examples than not where this is not applied. Significantly compensation
If all your organization processes are set up to work well for on-site, then the effectiveness of the remote people in your organization will hurt; if all your organization processes are set up for remote interactions, then the overheads of that don't make sense for the on-site people sitting next to each other; and if some units are fully on-site and some are fully remote, each with different style of working, then you might as well have two separate organizations with vendor/contractor relationship, that would be more efficient as their collaboration anyway have to be managed that way.
One common remote work thought is “you get more heads down time”
I’ve found almost the opposite. You have to be way more regular about engagement with each person. I would do 20 min meetings with every team member, every week. Team lunches over zoom twice a week, daily standup (1 min per person, plus breakout rooms for further discussions), Friday afternoon optional game days, etc. I always just hung out on a video conference, all day; similar to when people game.
In an office I can walk around the block with you and chat. In a remote setting I have to schedule some time and keep you engaged. It’s a long distance relationship, takes more time, and effort… much harder to sustain
That said, I’d set aside budget and offer it anyone wants to organize. If they did it they got a free meal, they’d get to start at 2pm, and could purchase games/activities.
Except that the parent commenter is expecting others to be available to them without regards to other people's working patterns.
And it is harder. For example, it's way easier to see when a junior dev is lost when you can see pain in there face from across the office instead of hoping it shows in one of the check-in meetings.
in person you just drag a laptop over but remote you have a call, share a screen, carve out time. not necessarily more disruptive, but sure feels like more effort, and now involves multiple apps sucking up bandwidth and potentially logging everything you say.
Also physically schlepping a laptop around to show someone is way more work than a simple screen share....and in either scenario here you're needing to 'carve out time'.
The truth and my point was that as a remote manager you have a lot more input requirements. Basically; you need constant touch points with every person. These comments also point out the challenges in that, don’t want to over do it either.
(1) Leadership & management are actually two distinct roles that are often conflated
(2) how do you lead a team without talking to them?
Your comment is fair-ish, but I think misses the mark. You have to balance touch points and removing blockers, with attitudes like “I want heads down time to work”. In an office you can walk pass, see someone struggling and offer to help. In a remote setting you need regular check ins.
For what it’s worth here, I described maybe 2-4 hrs a week of meetings. How is that a burden? Lol that overhead of planning & engagement (5-10%) dramatically (like 1.25 - 2x) productively. It results in less waste and a more motivated / engaged team, if done properly
This is exactly what I love about remote work.
Being able to schedule activities ahead of time and avoid my flow being interrupted makes me so much more productive.
I and the people I work with also like to organise meetings back to back. We spend our mornings getting through all our meetings by 11am, and then we've got the whole day to get work done without any interruptions.
That is from the people's manager perspective. From the perspective of an IC, the lack of all that extraneous engagement means we have more time to write code.
I know people who are RTOing to be on video conferences all day. Not a fun way to live.
There is a sweet spot for "amount of process" that makes individuals and teams the most productive. Note, I didn't necessarily say happiest, and the productivity may not be sustainable indefinitely but we all know there is a certain sweet spot. Too much process kills productivity. "Can I just please leave this fucking meeting and start writing code?". No process also sucks. "Oh shit, you built that API? I thought I was supposed to be building that"
But just the right amount unblocks everyone and lets teams build stuff efficiently.
The trouble is "the right amount" is different by person, by team, and by project. So the most important thing of any process is to have it be constantly re-evaluated and adjusted as the team and work evolves. But I think we've all been there on a team when things just glide and try to recreate that for the rest of our careers.
I think the same is true for remote work vs in-office work. Sure, on the right task working from home is positively ethereal compared to an office filled with interruptions. But on a long enough timeline, and especially if you are part of the creative process of engineering (ie not just "converting requirements into code" but helping define the requirements, and contributing to the full product, which good companies incentivize their engineers to do), then you do want to be in person with your teammates for at least part of the time. Juniors need access to Seniors to ask questions sitting next to each other or even pair programming. And there is nothing quite like iterating on a design with a peer at a whiteboard compared to a remote session.
Balanced effectively by good teams, a mixture of in-person and remote work is probably the most efficient answer for most teams.
The problem is:
1/ It doesn't happen automatically, much like refining a process, figuring out this balance is going to require much tuning and adaptation. And a top-down company-wide mandate for the same process is the opposite of empowering that for teams bottoms-up.
2/ It has meaningful consequences for people's lives - things like where they reside, and how they commute. Whatever improvements come with a hybrid work environment are probably lost by the candidates you lose who refuse to move, and the sacrifices people have to make in the rest of their lives.
If you think middle managers stand to lose due to remote work, you have no clue why middle managers exist in the first place. Remote work increases the importance of that role, in fact.
> Pure software dev jobs are very easy to do remotely
Have you actually done meaningful software development? For a specific example - designing a complex system is definitely hard to do remotely. Put 3-4 key people in that project in front of a whiteboard and you will get a much better outcome. I have been managing remote teams for >3 years now and have flown in my teams from all over the world to a single location on multiple occasions. Every single time, the feedback was that whiteboard sessions were awesome and helped move the project forward significantly.
Have you actually done meaningful software development? I'm sorry for the tone, it's just that you're presenting a completely unqualified argument based on your own personal experience and then claiming OP hasn't done software development.
I do hobby projects that delve into some complex low level techniques (because my day job is kind of boring tech and this scratches that itch for me). I've stumbled across a global community, meaning none of us have ever met face to face, and have had the best collaboration I've ever had with any other developers. It's especially better than the collaboration I get with my coworkers, who are all just doing their job with varying levels of enthusiasm (which is as it should be, it's just a job after all).
The idea that you need a whiteboard and to see somebody's face to effectively collaborate is an antiquated ideology in the present day. We have: Zoom, Discord, Github, Figma, Slack, Teams, etc etc. These all allow effective collaboration with other people without ever needing to see their face.
> Every single time, the feedback was that whiteboard sessions were awesome and helped move the project forward significantly.
Great. And you can just as easily screen share over Zoom and draw on a tablet. There is no magical ability that a whiteboard and in person meetings have over meeting virtually.
And all this to say, in person sessions can be great and collaborative too! But your conjecture:
> For a specific example - designing a complex system is definitely hard to do remotely. Put 3-4 key people in that project in front of a whiteboard and you will get a much better outcome.
Is not a tautology.
Put 3-4 key people in that project in front of a whiteboard, and you may get a better outcome. The world we live in does not operate in absolutes, and the more I learn the more I realize that being dogmatic about any approaches or opinions is usually dumb. There's always an exception to the rule, and, in fact, there's usually several exceptions to "the rule".
Nope - not "just as easily".
> The world we live in does not operate in absolutes, and the more I learn the more I realize that being dogmatic about any approaches or opinions is usually dumb.
I agree with this take. Speaking of dogma and absolutes, I wonder what's your take on GP's comment: "Pure software dev jobs are very easy to do remotely".
Now with that perspective of pragmatism, I believe job of C-suite is to strike a balance between what's good for everyone on average. There would be some who are actually productive with fully-WFH and those who want fully-RTO. Which is why we are seeing a return to a hybrid approach. WFH a few days and RTO for a few days. The key is to mandate RTO days uniform across the org to ensure that benefits of RTO are actually realized.
1. If US people wouldnt want to RTO, these jobs will be moved out to India. You can get to hire 3 people for same pay and they are happy to work. Or you can definitely hire pretty good engineer with half cost and same output
2. Unlike labour work, you are not competing with local people or can benefit from unions. You are competing with world and there are lot of people who are ready to grab it with same business outcome
You mean just like the other thousand times people said this over the decades?
Now many people are gung ho on solving these problems to enable wfh. And I personally view that as indirectly solving a lot of the reasons that international offshoring failed.
Even things like challenges with taxes and local labor laws - there are now brand new companies to address exactly that.
In the end the only barriers will be timezones, and even that the aforementioned async flows seek to address.
People keep saying “they tried outsourcing for decades and it failed, it’s a bluff” as if nothing has changed. Lots of stuff changed like improved video tooling. But perhaps the biggest change by far would be the remote first culture people are trying to build. Pre-Covid, every single FAANG company was office-centric to a degree. Bringing in international teams and integrating them would be effectively impossible. Remote first changes that.
Hacker news has so many wfh zealots you won’t even see much discussion around it since people tire of getting downvoted. But worth noting in my experience talking to IC SWE it’s closer to 70/30 preference for remote but based on online convos you’d think it was 99/1.
I personally quit a FAANG job with FAANG comp precisely because my org went remote first. The culture was alienating, the camaraderie was zero, incident management was a coordination nightmare , documentation for onboarding was a mess, and best of all, all my new teammates were Brazilian but since they were contractors they didn’t do on-call.
Management absolutely plans to replace Americans with much cheaper foreigners but there’s still just so much friction with remote-first. The only reason this big outsourcing push might work this time is because of the number of Americans hellbent on overcoming the challenges of remote work and simplifying their own eventual redundancy.
In the United States we have -zero- mandatory minimum paid vacation or holidays. Your employer could require you to come in and work to push a product out. You cannot do that in most other countries.
Like with these kind of remarks I start to wonder how seriously you're aware of with countries and holidays outside of the US.
Returning to a team that was all (more or less) in the same time zone has been amazing for my sanity.
https://www.theguardian.com/business/2020/sep/12/us-corporat...
Edit: spelling
2nd edit: noting these are not tech specific jobs, but the trend is there.
I have been in exactly this situation many times in recent years. My go-to would have been a team of co-located contractors in London. As soon as WFH became the norm, paying 40-60% of the rates in Eastern Europe or cheaper areas of the UK was a no brainer.
Any small gains they can make through arbitrage are eaten by time zone issues, communication issues, legal issues, etc when working across huge distances.
Yes there are trade offs, but wage arbitrage hasn’t gone away.
I think making an accurate comparison is very complicated, and if we looked at a large number of factors the wage arbitrage advantage would shrink. I think the seeming "wage arbitrage opportunity" is partly due to mis-assessment of the "sameness" of the contractors being compared.
For example, the average software engineer on the US coasts is much more likely than a software engineer in the US midwest to have gone to a top tier university, and although that doesn't guarantee they are better, there may be some advantage. The extra depth of knowledge or extra grit to grind through a slightly harder education might not show up in an interview or even on an average day's work, but might show up sporadically in ways that save or create significant amounts of money.
(To use a more obvious example, if a bootcamp coding school graduate and a graduate from Stanford both pass a coding interview, and both write a similar amount of "similar-seeming" code on an average day, I still suspect that when hard problems arise, or more sophisticated architecture or algorithms are needed, the Stanford or other top-school graduate is going to more reliably solve the problem and in a long-term better way.)
Similarly, they might live in a tech hub where they are constantly learning new technologies, or the general pace of their life and work might be ever so slightly higher. They might spend more of their free time getting better at their profession. Anyway, I won't try to provide an exhaustive list of possible differences, but these are some things I see that aren't usually accounted for.
the claim that it's gonna hurt the US in the long run is almost certainly false, because ironically the long-run US economic and foreign policy goals are constantly hindered by its own protectionist policies.
these policies are the same ones that lead to countless fuckups when it turns out that the US is both "too big to fail", but also still smaller than the world (Puerto Rico, Jones Act, name a more iconic duo; oh right, subsidies forced quasi-monopoly for baby formula and only 3 factories nationwide; oh right, granting WTO MFN status to China without requiring and enforcing reciprocation)
long run America is forced to deal with a lot of unstable allies because they are not integrated economically sufficiently. no shared fate no shared interest, etc.
... of course it's unlikely to "solve" geopolitics in a 7AM HN post, but worrying about offshoring IT jobs is like trying to cordon off the best seats on the deck on the Titanic as the water rises.
Because interview process in bigtech has been subverted by people benefiting from it and who are already skilled in it. I bet absolute majority of people that I worked with and considered them very good couldn't solve knapsack problem on whiteboards in 15 minutes, don't know Z algorithm by heart and won't be able to correctly project Amazon leadership principles with (made up bullshit) examples from their previous jobs.
But yeah, not the greatest timing…
Sure it is, if you're unionised!
I've seen decades of comments, even here on HN, from devs who say that unions are not necessary for software development.
Welcome to the future, I guess?
Maybe, but in my view unionising is the first step on the way to establishing something similar to what doctors or lawyers or accountants have.
I don't think it is possible to get to "Certified Professional Software Engineer" without first having "Union of Accredited Software Developers".
And therein lies the biggest problem in establishing Professional Licensure: you cannot allow uncertified members. The medical, accounting, engineering and legal professions gatekeep like mad, with the first gate being "complete this degree or equivalent", and the second gate being "write these exams", with various smaller hurdles after that (malpractice insurance, annual dues, etc).
I'd love professional licensure in our industry, but it's not going to happen.
Or "working class"
Typical software jobs absolutely do not "hold the means of production".
The aforementioned "means of production" likely includes years of work from an entire sales team in order to land paying customers in the first place. What good are the "means of production" when no one is buying your product?
Cool, you built a useful piece of software... are you ready to pay a cool million to your sales people to actually get it out the door? No? Well then you don't own the means of production. You own a pipe dream.
How about paying for all of those cloud servers that your customers run on? When you write code does it also automatically pay your cloud server bills? Guess what, those servers are required to actually run the god-granted code that you put on this earth.
In a way you're both right - software developers (usually) don't create/design/sell the entire product end-to-end, but they no doubt are a critical piece of the process. That gives them leverage.
Uh, none. Just like no one would sell vacuum cleaners if there weren't companies that actually manufactured vacuum cleaners. As with any other product that is being massively manufactured though, you still need to sell it to someone when you actually have it.
You might similarly ask, how are all of these plumbing companies going to stay in business without plumbers? Well, it's because plumbers typically work for plumbing businesses. Just the same as how software developers typically work for software companies.
Unless you are just trying to grift people, which a disappointingly large percentage of the tech/Silicon Valley/startup crowd are totally cool with.
I would argue that software that exists with no one to sell it is actually MUCH less valuable than a salesman with nothing to sell, because someone has poured countless hours of blood, sweat and tears into that code, and without a salesperson that developer will receive a terrible return on their investment.
A salesperson with nothing to sell on the other hand is simply a salesperson looking for a job. They have not expended the hours creating a product that will never sell.
How is "the phenomenon whereby a person is reluctant to abandon a strategy or course of action because they have invested heavily in it" relevant?
When a developer spends time on code that no one ever pays money for, whoever is employing that developer has lost money, probably a lot of it.
When a salesperson sits at home unemployed, it costs the company who will eventually employ them nothing.
How in the world are you trying to claim a sunken cost fallacy in this case? Did you respond to the wrong post? I'm trying to give you the benefit of the doubt here.
Never seen that happen. Software that exists with no one to sell it just doesn't get sold.
On the other hand, a salesman with nothing to sell is Bill Gates when he signed on to provide MS DOS for IBM.
In fact, if you look over the history of this industry, success has, with few exceptions, always been sales-first, then development effort.
It's why we prioritise MVP: do the minimum necessary that we can sell, so that the dev effort is not wasted. At it's core, MVP would involve absolutely no development at all.
Your point, correct me if I'm wrong, is that software is more the commodity and sales is differentiable?
I wonder how this stacks up against other software that yielded massive public utility, like UNIX, or the internet.
At this point in time ... well, yes.
Just about any software that a business needs is, at this point in time, already written, with few exceptions.
For almost any MVP, at this point in time, you can gauge market interest using something that already exists.
> I wonder how this stacks up against other software that yielded massive public utility, like UNIX, or the internet.
Those were different times, and even those different times things like UNIX were mostly differentiated only by sales-efforts of the hardware vendors.
There was a time when people had to be sold on the idea of the internet being at all useful. It had to be sold.
The aforementioned "means of production" likely includes years of work from an entire sales team in order to land paying customers in the first place.
that's the means of sales.
"Build it and they will come" is not how it works. There is a reason why very successful sales people often make more money than tech workers.