Hacker News new | past | comments | ask | show | jobs | submit login
To All the Jobs I Had Before (elisabethirgens.github.io)
327 points by ingve on Sept 18, 2020 | hide | past | favorite | 84 comments



Took a read through her notes, I kind of like them. Short, concise, a bit all over the place but in a way that feels 'authentic'. It also helps that I'm not being sold anything - I feel like everything and everyone is doing that nowadays, and it's exhausting.

> I learnt how constraints affect the system as a whole. If the elevator or any other part of the system was too slow, the entire production would grind to a halt. You truly grasp the concept of work flow when it is physical. Boxes clogging the conveyor belts, pallets queueing up with no floor space, lines of people literally just having to wait because their work stations are blocked from progress.

Really liked this paragraph, was very easily visualizable. Factory lines at a standstill because some cog in the machine is broken - tonnes of smelly fish sitting around, frustrated workers yelling about, clanging of machinery and the waves of the sea in the background.

In software we work with things that are just so _abstract_, it's nice to just be able to understand a system and it's flaws at a glance. It's nice to be able to see/hear/smell/touch what is wrong, what is right - in software, the most common way we get data is through text. Sometimes we even see a 2D image that (usually badly) represents some complex concept.

But it's not the same. I wonder if there is a way to change this.


> Factory lines at a standstill because some cog in the machine is broken

Many years ago I helped prototype a system that would track product flows in a manufacturing process. The existing process for dealing with blockages was to employ a 'progress chaser' - a person whose specific job was to walk around the factory looking for problems of this sort and who had the authority to try and resolve them (e.g. to retask people or machines). The existing management had two problems with this:

1) The person who did it was not easily replaceable if hit by a bus because of their very detailed knowledge and charismatic authority

2) His solutions sometimes addressed the 'noisiest' problem, not necessarily the one that had the biggest impact on the bottom line.

Needless to say, our prototype failed to solve the problem, but it made me realise that dealing with these blockages can be really difficult.


I would like to do more. Certainly progress chaser sounds, to me, like the logical solution and those two flaws are also obvious downsides, but what is commonly done now?


> In software we work with things that are just so _abstract_, it's nice to just be able to understand a system and it's flaws at a glance. It's nice to be able to see/hear/smell/touch what is wrong, what is right - in software, the most common way we get data is through text. Sometimes we even see a 2D image that (usually badly) represents some complex concept.

I think programmers are very good at building intuition about systems without help, partly because we rarely have good help from documentation. When we want to share our understanding of a system, we go to a whiteboard and have a very rich conversation about a simple diagram. Sometimes we draw different diagrams for different contexts: the performance context, the business logic context, the security context, etc. Fully detailed diagrams are overwhelming. Once we have good understanding, we intuitively edit the big picture down to the relevant parts. I don't know how to reproduce this in static documentation.


Yes, and keeping the documentation up to date - diagrams tend to go out of date.


>It also helps that I'm not being sold anything

You know her name, the fact the she's a freelance website designer, and you already like her from this article.

Let's say it : it's a good article, and it's also an excellent ad ^^


Abstract it that way and it's hard to argue that this very post isn't an ad.


Ads and marketing in general aren't binary. It's just that the ones that are only trying to grab your attention or build brand awareness tend to be on the more intentional and less helpful end of the spectrum of reputation signals.

Things we like to label "good marketing" tend to be more towards the middle of the spectrum by sharing useful information as a way to build reputation. On the opposite end of the spectrum from ads would be word of mouth, like that coworker who everyone loves for their competence.


Well, you could convince me I suppose ! Since I don't think ads are inherently bad, it doesn't bother me though. The line between information and "decent" advertising is quite blurry in my opinion anyway. (Decent meaning roughly "we merely want to inform you our product exist and we hope you'll maybe like it")


Abstract it this way and it’s hard to argue that any blog post (or stack overflow answer or, I suppose HN comment) isn’t an ad. Or conversation at a cocktail party, for that matter (“lapetitejort seems to know a lot about bikes. I should ask them about mine.”)


I'm fairly sure most people wouldn't put intentionally getting fired in order to sue an employer in an advertisement for their services.


> It also helps that I'm not being sold anything - I feel like everything and everyone is doing that nowadays, and it's exhausting.

Yeah it's the worst thing on the internet. Makes me wish my blocker could kill covert marketing articles on sight. I feel like this was less common in the earlier days of the internet. Now it's like nobody starts a website just because they have something to say, it's always to make money.

Why would anyone even trust a person who is trying to sell something? The inherent conflict of interest immediately leads to distrust.


"It also helps that I'm not being sold anything - I feel like everything and everyone is doing that nowadays, and it's exhausting."

I build interesting projects, and then I reach out to various connections on LinkedIn to show them the neat project. Yes, it is marketing myself, but not really. "Here's a neat thing I built. What neat things are you building?"

I preface every outreach with "There's no ulterior motive. I'm not pitching anything. I'm not selling anything."

Yes, technically, there is an ulterior motive. If I show you this fascinating geejaw I built, at some point, five years from now, you may need my skillset and think of me. But I'm not trying to sell you on that.

Without variance, every inbound message I receive on LinkedIn is someone trying to sell me something.


The book The Goal is a fun read if you're interested in constraints.


This was required reading for an engineering management course and is one of the few texts that I find myself thinking back on many years later. I strongly second this recommendation.


For a great visualisation of this kind of thing check out the game Factorio!


Better yet, a visual programming language based on Factorio.


Mindustry for an open source free version of the same thing on just about any platform.


Or Sandship on iOS.


This sounds just like the book The Phoenix Project, where they talk about work flow.


I lead-taught General Assembly's web development bootcamp for a year and a half. My students included a retired Air Force colonel, an orthodox Jewish grandma, and a guy who used to write FORTRAN in the 70s, in addition to lots of people in their 20s and 30s.

We came to realize that one of the most important things our students needed to learn is that their previous careers were an asset that gave them a significant edge over their competition in the job marketplace. They weren't jumping ship and starting their careers over; they were expressing their skills in a different way.

Coding is just a part of being a programmer. Unless you're working for yourself, by yourself, a bigger and more important part is being able to communicate with others about what you're coding. As an employer, given the choice between a competent developer who knows how to communicate an idea and work with others, and a "rockstar"/"ninja"/"master hacker" developer who doesn't, I'll take the former choice every time.

Whether you're switching to technology from being a waiter, a salesperson, a graphic designer, or whatever, the experience you gained from your prior jobs is hugely valuable.


The variety of jobs that the author has had in her career is impressive.

I consider myself lucky in that I'm reasonably marketable on the job market - I'm ok at interviewing and I've worked at a few FAANGs (including Amazon). But I recently got turned down for a job because I "don't have enough AWS experience".

It feels like the only way to change a career is 1) get a job doing exactly what you were doing before (e.g. React dev), 2) at that job, do something tangential for a while (e.g. UX design) and then 3) with that experience, go and find a new job in the new field.

How does someone go from working in elderly care, to a fish factory, to a design agency, etc.?


When you start to accept salaries that are a fraction of what a software engineer makes, motivation and general skills become more relevant than specialization.

Said differently, if I'm gonna pay you 300k per year, you'd better have the exact skills I search for. For 30k per year, showing up every day ready to lift heavy things for 8 hours is sometimes all you need (certainly not true right now during the COVID crisis).


>Said differently, if I'm gonna pay you 300k per year, you'd better have the exact skills I search for.

If only executive salaries with golden parachutes were as discriminating as developer negotiations.


There's not exactly a large labor pool for executives at the tier where they would need a golden parachute.


> you'd better have the exact skills I search for

How often does that work out for you? Because I've gotten lucky a couple of times and found people who were really good matches, but I've never found an exact match.

We look for people with a demonstrated ability to solve problems in the space they'll be working, who can learn as they go, with the soft skills and demeanor to mesh with the team.

We end up settling a lot.


It worked in the sense that when I was part of recruiting software developers, the resumes we received were all people having previously wrote code in their life. A significant part of them had wrote code in a fashion similar to what we're looking for (c# for a java codebase let's say as an example). A small fraction had used some of the technologies we used already.

My brother in law has a painting shop. Right now he want to recruit a sandblaster. He'll literally hire anyone with enough muscles to pick up the tool and ready to show up everyday at 6am for 8 hours of sweating.

What you call "not an exact match" is already matching precise criteria in fact. I bet you have interviews ! You don't need an interview to get a sandblaster job. You just have to show up a morning at my brother in law company and lift the sandblasting tool ^^

So yeah, SW are recruited - even if we don't see it that way - with pretty stricts criteria. Would you hire someone that has never booted a computer in his life ? Never wrote a line of code ? Never learnt an algorithm in any fashion ? Settling for you maybe is sometimes hiring a java dev for a haskell job. Somewhere else it's hiring a former butcher for a painting one (the guy is pretty good apparently!).


It's not just developer jobs.You go into higher level professional jobs and you're usually looking for some fairly specific experience. (Arguably at the highest levels you're looking more for people who can broadly make organizational impact, but stick to individual contributors to keep things simple.)

When I look around my broader group, I'm a bit of an outlier even in a lot of engineers would say we all do "marketing." But there are relatively few other jobs I could hit the ground running with at a senior level. What I do is very different from demand generation, marketing campaigns, etc.

If someone is right out of school who cares. But you're not going to pay me senior level compensation for a job I don't really know at a detailed level.


That is my own experience when I was in a hiring role. I look for the same abilities you mention.


Actually as you get higher in the pay skills, people often pay the most for rock solid algorithms and cs, not "is an expert in kubernetes"


Front end work is a dead end. The real money is made on the server-side. AWS and others are slowly eating the back-end space with FaaS type offerings, so while it may be a dead end, you might be the only one standing in another decade.

I wouldn't consider React experience from a FAANG any more valuable than any other place. It's the same mission, it's the same code. Infrastructure engineer, on the other hand, yes, very interested in the FAANG experience.

There's no substitute for building fault-tolerant distributed systems. Writing software is one component of that overall job description, and probably not the most important component.


> It feels like the only way to change a career is 1) get a job doing exactly what you were doing before (e.g. React dev), 2) at that job, do something tangential for a while (e.g. UX design) and then 3) with that experience, go and find a new job in the new field.

I've noticed the same and would also be interested in hearing how she transitioned. It might have to do with how in demand employees are at the time of hiring. In a tighter job market employers are more picky.


For elderly care or the fish/transport/non-hi-tech manufacturing jobs you quit, ask if they have positions and live hapilly on or near minimum wage.

Im always shocked by how few have any experience doing any other work, fast food and service industry included.


Having a lot of skills is a liability. Employers only want someone with 6 months of experience repeated 20 times.


My short list from 15 years of non tech work:

* I grew a couple acres of Zucchini with my dad when I was in middle school, and learned about profit margins, middlemen ripping you off, cost of labor and the basics of business. We did it as a hobby, did almost all the work ourselves (besides paying some neighborhood kids to help us in picking), ended up almost breaking even (a ~$50 loss) after a few months. Never did it again :)

* Worked on an assembly line for Motorola after high-school, assembling taxi two way radios. Learned about how companies operate at scale and how you can optimize processes at every point (I found an optimization to some manual assembly process that reduced the probability of defects in the assembly and got recognized for it).

* Worked for a few years as a writer and editor in print media. I've learned so much about how the world operates and power dynamics, I can't begin to detail it. But a good lesson was that anyone is just a couple of phone calls away, and that you need to maintain a social graph. Also got an affinity for meeting deadlines I've still yet to completely shake off despite years in tech where no deadline is ever met. In print media a deadline is a deadline. I've also learned how to tell a story in a compelling way which is a skill that's still important.

* Worked in content in the early days of the web. Learned how powerful of a medium it was and realized it's going to take over the world, and that what I really love to do is coding (which I was doing as a hobby since childhood).


Growing a few acres of something seems like a very cool project. Did you / your dad already have the land before you decided to try it out? Do you think you would have done it again if you had made money? Would you recommend it as a project to someone else?


We moved to this sort of village where our house had a few fields, and I think my dad entertained the idea of trying to do it seriously (he did have past experience but was working in a different field and had an unrelated university degree). In the end it was just a lot of hard work, some of it fun (I got to drive a tractor at 14!), but most of it was tedious and not very rewarding. I guess had we turned a little profit this would make us more incentivised, but also about a year later we moved away to a city so it wasn't practical anymore.

I'd recommend starting with a pretty small field and not going commercial on the first try.


We should start a thread with other lessons from supposedly dead-end jobs. I'll offer the following from a couple teenage summers as a hardware-store clerk at minimum wage:

- Start out friendly when you're interacting with someone you've never met before. It usually works out well.

- Don't spew BS answers when you don't know something. Seriously. Just own up to your knowledge gap and see if someone else can help.


- Working in a car lot: when you dent the fender of the $200,000 Mercedes, go tell the boss instantly. That's the only way you're going to keep your job.

- Working in a print shop: set up a system to check your work, double check, and triple check it. You can fix mistakes in code, but it's a lot hard in print.

- Installing Windows 7 on new PCs for government employees: follow up as many times as needed. Don't assume it's anyone else's job to help you do yours. They have important work to do, and you need to work around them. Don't expect people to be eager to turn over their computer to a co-op student, even if they're getting a shiny new one.


- A summer cleaning bathrooms at Disneyland: eliminate smells at their source. Applies to code, too.

- College catering kitchen: don't mistake pickled ginger for sliced turkey, even if you haven't eaten all day.


> To this day, I don’t try to impress with my suggestions

This was me 10 years ago. I'd try to "impress" people with the final result by not asking any questions and praying that they were just as excited as I was about the magic I created in a vacuum.

It took me a long time to unlearn that. Fight through asking questions - getting negative, sometimes awkward feedback.

Thankfully, I grew up - slightly.


re: 'fighting' through questioning...

Just the other day, I had a PM say "why do you question/argue so much? Just do what they say. If it's wrong, you can then say 'I told you so'".

I can not really square that circle. I spent many years earlier not questioning things up front, just rushing ahead and doing stuff, then inevitably it was 'wrong'. I've been doing this a long time now, and questioning up front saves time. It does come across as 'arguing' sometimes, I know - I've raised my voice more than once.

I wanted to turn the question around and ask "why do my questions/input/suggestions always get argued with and fought against? Can you just run with my input for a week or two, and if I'm wrong, you can say 'I told you so'?" I didn't throw that back, as I'm not sure it would have been taken well.

I had replied "you can say I told you so" thing isn't just me saying "see, I told you so", it ALSO means I'll be having to clean up the 'original' way of doing something and rebuild it the 'right' way, which puts everything behind schedule and wastes money and time.


> I can not really square that circle.

I have similar experience. When I was in the military I was very "Sir, yes sir". Nowadays, I need to understand what / why I am doing what I am doing. It's worked well for me in hyper growth environments and not so well in established companies where people don't question the status quo.

I could be wrong here, but generally I see two types of people. People who care about what they're doing and people who don't (missionaries vs. mercenaries).

The trick is to not come off combative or argumentative. Tricking people into thinking something was their idea has worked well for my personal journey.


100% "The trick is to not come off combative or argumentative". But I've never had to worry about "Tricking people into thinking something was their idea". It is always their idea, I just refine it.

I'm 15 years in and my PM puts me on special high profile cases, be it a new project or a failing one. She will literally tell the customer "We've got 'insert name' on this. He will ask a lot of questions and it may take him some time to complete, but rest assured that when he's done, it will be exactly what you need."

No pressure, right? I need to communicate very clearly about everything. If I feel there's a risk, I call it out EARLY. My PM wants to get out ahead of any issues and have all the resources that I need ready to go when I need them.

The upside of all of this is I have a "get out of jail" card. Because my PM and leadership know that it's actually done when I say it's done, they encourage me to take my time and do it right. Overtime, what's that? They know the mind fogs when someone works too much. I'll get scolded if I work too much.

Even when only working 30 hours a week, I find myself quite spent. I have no idea how people work 40-60 hours a week and still have the energy to go out and do anything.


What's the point of tricking someone "it was all their idea" , if they get the credit, and with it, the promotion ?

Sure the work will get done better, but it's not like we're saving lives or doing something important, so what's in it for me ?



Yes, you are absolutely right, we should absolutely do the thing that I manage to on the surface make sound very similar to what you just said but is actually the opposite. :)


On the opposite end it's possible to kill things too soon by being overly pessimistic. Ask the hard questions but weigh the likely benefits against them.


> I learnt to prefer discovering the limits early, then proceeding to be creative within those. I don’t get thrilled about what we could potentially do with unlimited time and twice the number of people. I genuinely get most excited by what we can do here and now with the resources we have.

I'm curious what other people feel about this. It is also my tendency to be creative "within the box", but I always feel a vague pressure to be more enterprising and expand scope so that we can get more headcount.


The authors appreciation for working within limits speaks to me, and resonates deeply within. This is how my own creativity works. For example when I'm embarking on a project where I'm going to build something, I'm not interested in what's possible if I have unlimited resources. I'm interested in what's possible using the tools and materials on hand, with very little brought in from the outside.

To me it's part of the "hacker" mindset- doing 90% as good with 10% the means.


This was maybe the one point in the whole article I disagreed with. I find that I can only be creative if I start with unconstrained thinking. But maybe that's because my natural mode of thinking is to try and constrain things as quickly as possible (which is part of my job, I guess, as a technical person). But when I jump to constraints quickly, I often rule out answers that may make a lot of sense, even given the constraints, or end up forming the wrong constraints.

Anyway, maybe being creative is just an exercise in fighting our inner biases. If you're an unconstrained thinker, it requires you to constrain things. If you're a constrained thinker, it requires the opposite.

Anyway, I loved the article overall. Very thoughtful and inspiring.


100% agree with it. As a child, I always felt most creative when the number of lego pieces was limited. Like, what can I make that's cool with just these two handfuls of lego? Where would this weird piece go, and what could it be?

Unlimited possibility bogs me down. I get frozen.


I wish everyone had this mentality, creatives and developers alike. We would get so much more done.


I really resonate with the bit on creative constraints. I, too, enjoy working with some constraints compared to being faced with constant decisions to make when options are endless.


Mark Ferrari (graphics artist on Lucasfilm games such as Loom and Monkey Island) said (roughly): "If someone gives you limitless resources and asks you to create the Pietà, you will dabble in all fields and become expert in none. If someone gives you a stick and two pieces of string and asks you to create the Pietà, you will stretch that stick and those pieces of string as far as you can."


I found this out with Minecraft and WorldEdit. I spent more time tinkering than building without any resource constraints in creative mode and with a tool to make huge changes.

Survival mode, even with monster spawns turned off, forces a constraint, and all the cool stuff I've built happened there. I can't just lop off the top of a mountain and lay out a perfect rectangle or square building. It has to grow and evolve from the blocks I collect on the available landscapes.


There's a weird pleasure in having infinite option.. that quickly deviates into toxicity. On the other hand, solving small problems with constraints feels like a solid piece of acquired knowledge that makes you want to do more.


>I learnt that organisations consist of people and decisions do not materialize out of thin air. You can often impact more than you think, even if you feel like you have no say at all. Companies can have the most rigid power structures in place, and it is still possible to push, prod, nudge, plant ideas.

How ?


I mean, buy her a beer ;)

But also, through lots of coalition building. You find allies. You find people up in the power structure who are willing to talk.

Core skill: Separating your upset from looking for a solution. Yes, you hate that particular idea, it might be actively harmful, you're deeply upset - but if you want to achieve change within the company structure, ranting and railing won't get you there.

Core skill: Understanding the other side. Ask questions. Deeply understand why things are the way they are, or have been decided this particular way. What are the constraints, how is the business impacted?

And then you collect your allies. You formulate a plan that achieves a better outcome, but still addresses what the concerns are. You start socializing that plan with people in management you are closer to. If it has merit, they will sooner or later introduce you to higher-ups they trust. Rinse. Repeat.

It's a long process. Especially the first time. But once you've done it once, you'll become better at it, and you already have a network of trust.


Thank you. Very insightful.


With the right type of personality. That rule you don’t like, someone wrote it, someone is enforcing it, someone has the power to change it given the right incentives. If you can empathise with these people, you can find compromises that are a step forward for everyone involved.

I know I’m pretty bad at this sort of thing, but I’ve seen people who are good and it’s definitely a superpower.


You have to buy her a beer to find out.

> Buy me a beer and I can tell you the story of when I intentionally got myself fired to dispute illegal work contracts.


>> Buy me a beer and I can tell you the story of when I intentionally got myself fired to dispute illegal work contracts.

I question the wisdom of posting this publicly. Should she ever need a job, fact is employers read this stuff but she’ll never find out that posts like this influenced their decision. It may not be right, but it’s what happens.


I have a hard enough time getting potential employers to read my resume let alone look at my github work. In theory you may be correct, but my experience has been the vast majority of employers don’t bother.


Employers use automated tools that crawl known social media keeping track of key words.

It wouldn't be hard to include some sentiment analysis and not hire people that discuss labor or worker rights.


If it can be demonstrated that a not-insignificant amount of employers actually do this, then sure.

But considering the amount of "We think you're perfect for this Java job" (as a Javascript dev) from even legitimate companies, then I doubt that any employer is running anything more complicated than a Nigerian Prince-style spam bot.


I know for a fact they read your personal internet posts once they get close to employing you.

And you’ll never know that they did.


I've been on the hiring side of the process at multiple companies, big and small, ranging from being interviewer to hiring manager.

At smaller companies on tighter teams you may occasionally google candidates but you typically don't have time to dig into the details of anything they've written.

For all of the larger "day of white boarding interviews" type places they absolutely don't bother to read up on you. The people interviewing you are annoyed enough that they have to take a break from work to interview, and depending on the location the hiring manager might not even get to meet you before the offer is made.

And if someone does read deep enough in your work to come across this then they're just as likely to have this tip the scales in your favor as not. I've certainty had candidates that I've wanted to hire more after seeing controversial posts, and have been hired by many people who feel the same.


How do they find out your online usernames aside from Facebook and LinkedIn? I've never been asked to supply them as part of a job interview.


You most likely gave them your e-mail. Also often (in this industry, at least) online username can be gleaned from Facebook or LinkedIn URLs.

Having that, it's trivial to discover your wider on-line presence if you have one (and never bothered hiding your identity).

As for who would bother doing that? I guess it depends on company hiring practices (particularly on the amount of interviews), but in every company I've worked in so far, someone would bother doing a little research on a prospective interviewee.


This person has posted with her real name.


Here's the thing: If you have a background like that, you don't want to work for a company that goes deep reading on your background, and then gets upset that you fought illegal work contracts.

It's an excellent sign they're both invasive and disrespect the law.


I don't think she wants to work for a company which wouldn't hire her because of that anyway, so it'd be automated bullet dodging.


> I question the wisdom of posting this publicly

Ultimately, every employer has a different set of things they look for and red flags. There's a time and place to hire someone who will shut up and do as they're told; and there's a time and place to hire someone who will manage up and push you to do your best.


She's from Norway. We still have a culture of keeping workplaces ethical. Trust me, this is not a black mark in any employment situation apart from really really terrible ones.


Sounds like a good filter to keep employers she wouldn't want to work with from wasting her time.


It's also a signal that might help bad employers avoid her, and she avoid them.


I agree, but the cost/benefit analysis on that involves asking what percentage of employers would qualify as bad.

If it's 1% or even 50%, you may come out ahead by eliminating them. If it's 99%, it might present practical problems.



Great little takeaways. The early bits remind me of my own job history — I also worked on a fish processing barge, using a forklift and being constantly stymied by the elevator bottleneck. The next job I did, I also got myself fired to protest what I discovered to be an illegal internship.

I think Elisabeth learned more from the experiences than I did though, she seems like a very thoughtful person.


7 Years freelance, and 4 years at an agency. If you're here, I'm curious at what point did you decide your career as a devloper started and why was it not 7 years ago?


With every different job you do, you (should) learn something new and useful.


I learned that outside the US and Canada they say learnt instead.


Fun times. Buy me a beer and I can tell you the story of when I intentionally got myself fired to dispute illegal work contracts.

WTF? Evil.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: