< Back to the archive

Like what you see? Subscribe here and get it every week in your inbox!

Issue #73 - July 26, 2020

Here are the top threads of the week, happy reading!

Top comment by SubuSS

I worked for Amazon (like you:) but that was 5 years ago. Things were a lot more breakneck then - but I can see how things could’ve slowed down with the 3x dev count now.

As many have pointed out, it depends on teams. I have seen engineers in retail whose sole job was ensuring data entered the catalog correctly through the input system and fix any errant data. I also saw teams like mine (early kindle / early dynamodb) literally perform magic. We launched dynamo across the world with a <15 person team. But it had 3 principals and 5 sde3s in a time when the whole company had <100 principals. That team remained highly motivated through my tenure but the members went on to different parts overtime because it was too much talent concentrated in one spot.

In short I look at FAANG as flexibility. you have a major life event, you will probably have enough good will to work it out with lighter contributions. You want to build bleeding edge software, you can do that too.

I’d suggest finding the local legends now, see what they are working on, building deep knowledge about it, ask for an interview and join them. In a big place like that, there are always movers and shakers - they are also looking for motivated and talented devs for their team, so it is mutually beneficial. It will only work with your initiative and a bit of luck though.

FWIW - I still have some of my old contacts there. Message me if you want a referral. Good luck!

Top comment by IWantOut_

I have a job offer from Microsoft in Vancouver and might move there after the pandemic ends. I am Indian citizen residing in India. The main challenge however is that I am disabled (quadriplegic) and I would be needing a caregiver to travel with me to Canada. I understand that there used to be a caregiver visa, for Canada, which was discontinued back in 2019.

So my question really is, is there a way in which I can bring a caregiver from India to Canada? I know one option is to hire a caregiver from Vancouver itself but it's really going to be difficult, because of the language barriers and the understandings. They are an important part of my life and I cannot function without someone who I can completely trust to live-in with.

Another option would be to take the caregiver along with me on a visitor or tourist visa, but in that scenario, they are not allowed to work in Canada.

I am really looking for solutions here and I don't want to give up on this amazing opportunity of migrating to one of the most amazing countries in the world with high standard and quality of life.

Top comment by frereubu

Seems an appropriate time to post my favourite piece on news addiction by Charles Simic in the NYRB.

"I’m having trouble deciding whether I understand the world better now that I’m in my seventies than I did when I was younger, or whether I’m becoming more and more clueless every day. The truth is somewhere in between, I suspect, but that doesn’t make me rest any easier at night. Like others growing old, I had expected that after everything I had lived through and learned in my life, I would attain a state of Olympian calm and would regard the news of the day with amusement, like a clip from a bad old movie I had seen far too many times. It hasn’t happened to me yet. My late father, in the final year of his life, claimed that he finally found that long-sought serenity by no longer reading the papers and watching television. Even then, and I was thirty years younger than he, I knew what he meant. What devotees of sadomasochism do to their bodies is nothing compared to the torments that those addicted to the news and political commentary inflict on their minds almost every hour of the day."

https://www.nybooks.com/daily/2011/12/05/goodbye-serenity/

Edit: Charles Simic is a Serbian-American poet who lived through WWII and saw some really grisly things, some described briefly in the article, hence "after everything I had lived through and learned in my life..."

Top comment by bollu

There is really only one "bible". I recommend solving through it, at least the first 4-5 chapters:

- Nielsen and Chuang, Quantum computation and information: mmrc.amss.cas.cn/tlb/201702/W020170224608149940643.pdf

While you are reading and solving the above book, I strongly recommend reading:

- "Quantum computing since Democritus" by Scott Aaronson, one of the researchers on quantum computation: https://www.scottaaronson.com/democritus/

This book will give you a "flavour" of where the power of quantum computation might be coming from, and the whole host of theoretical issues that surround this domain.

What I _highly_ recommend is practicing problem-solving using these resources:

(1) Microsoft quantum katas: https://github.com/microsoft/QuantumKatas

(2) Codeforces Q# coding contest: https://codeforces.com/msqs2018

Actually programming the circuits in Q# will give you a sense of stuff that's swept under the rug when reading textbooks: initialization of qubit states, a good sense of what "qubits cannot be copied" means, etc.

At this point, one ought to have an understand of quantum computation and our current understanding of its power (in particular, the relationship that we don't know how to separate BPP and BQP), how to implement the "common" quantum algorithms in a programming language, and a vivid sense of the "quantumness" of these algorithms.

For reference, I speak from experience: (1) My solutions to the quantum katas: https://github.com/bollu/quantum-course-exercises. (2) My scattered QC notes: https://github.com/bollu/notes/blob/master/quantum-computati...

(One can find a full pdf of quantum computing since Democritus relatively easily on the internet if one so chooses.)

Top comment by jefurii

It's most certainly better for your soul, but get ready to take a pay cut. After a short career in game development and a much longer career in museum/library/archives, my take is that our societies values are out of whack: the more your job benefits your community and the planet the less you will get paid, and vice versa. It's even worse for social services.

You'll also take a hit in your reputation among other developers, most of whom seem to have gone into it for money and don't seem to care whether or not their labor is doing anything to benefit society.

Good work is still worth doing of course. You just have to count the work itself as one of the benefits.

"Work as if you live in the early days of a better nation."

Top comment by jcborro

1. Opened a ski mountaineering shop (https://skimo.co/). I backcountry ski most mornings in winter/spring before we open at a casual 11am; work on the site in the summer.

2a. Sick of pointless discussions about languages/frameworks/architectures, none of it matters to low-traffic/low-tech business.

2b. Sick of meetings/arguments to decide what to build. Making business and tech decisions simultaneously is amazingly efficient; e.g. no wasting time over-engineering for a requirement that may not even be important.

2c. Wanted to try and combine/balance my skill with my passion.

Top comment by screye

At a practical level, the industry will pay you the least amount of money for which you will accept the offer.

In SF/Seattle, if they do not add the COL multiplier, your wages are low enough, that you might reject the offer. On the other hand, it is quite unlikely for a person to able to find another competitive offer, even if their salary is significantly lower than their colleague who make less.

At an ideological level, this poses a much bigger question. Are employees paid a proportional amount to the value they bring to their organization ?

I would say no. I do not believe every talented European is 40% as capable as the average developer in the US. I do not believe that the same software engineer that made $10k in India, suddenly brings 10x as much value due to a 1 year masters, once they move to the US.

Everything points towards companies historically paying employees not the salary they deserve, but the salary they will accept. As long as remote employees continue accepting these lower salaries, they will continue to be paid lower salaries.

It is a chicken and egg problem, in that sense.

Top comment by rbflx

I can't really help you, but I just wanted to say that I've also felt the same way for a few months now. I'm not really in the same situation, but just seeing people make these outrageous amounts of money has been pretty depressing. What really gets me, apart from people like Bezos (like you've mentioned), is that there are literally children making multiples of a doctor's salary by peddling products to even younger children on social media. I guess it's always been similar, considering that child stars have existed for a long time, but there's just something so disheartening thinking about those people making these sums, while others work jobs that are central to our communities and earn a fraction of that.

At this point, I'm at the stage where I'm just trying to start as many projects as possible in my free time and just see what sticks, because frankly, I now believe that people's success is entirely driven by being in the right market at the right time, so you might as well maximize your chances.

Top comment by schwartzworld

Counterpoint: regardless of what address is used, nobody can force a business to actually check and respond to emails. A no-reply address is at least a transparent statement that your response will go unaddressed.

Top comment by avolcano

Many apps nowadays use phone numbers for verifying new accounts. Obviously, it is far from impossible for a malicious user to get a new phone number if they care enough, but it does usually have a monetary cost, which will keep a significant portion of malicious users out. This also can help prevent some forms of fraud.

This is somewhat obvious, but take care in designing social interactions on your app, and introduce easy reporting systems and user-controlled blocking systems (e.g., even if you don't respond to a user's report in a timely manner, a user should still be able to block communications from another user using a button in the app). You may want to allow users to choose to only allow messages from users who have been on the site for a certain amount of time, or have some kind of additional level of verification. Also consider introducing active, paid moderators who actively respond to reports as they come in, if your budget allows.

Allowing users access to open text fields on the internet is inherently dangerous. I have tried to avoid it in all of my apps (for example, I've made games that use randomly-generated user names rather than allow users to input their own, and I only added user comments to an app I was building _after_ I'd built a user reporting system and ensured I got an immediate alert on my phone if a user sent a report). It is your responsibility to try to design your app, and moderate your community, to mitigate these risks.