To All the Jobs I Had Before
elisabethirgens.github.io
elisabethirgens.github.io
> 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.
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.
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 ^^
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.
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.
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.
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.
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.
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.?
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).
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.
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!).
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.
If only executive salaries with golden parachutes were as discriminating as developer negotiations.
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.
Im always shocked by how few have any experience doing any other work, fast food and service industry included.
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.
* 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).
I'd recommend starting with a pretty small field and not going commercial on the first try.
- 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 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.
- College catering kitchen: don't mistake pickled ginger for sliced turkey, even if you haven't eaten all day.
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.
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 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.
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.
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 ?
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.
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.
Unlimited possibility bogs me down. I get frozen.
To me it's part of the "hacker" mindset- doing 90% as good with 10% the means.
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.
How ?
> Buy me a beer and I can tell you the story of when I intentionally got myself fired to dispute illegal work contracts.
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.
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.
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.
And you’ll never know that they did.
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.
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.
It wouldn't be hard to include some sentiment analysis and not hire people that discuss labor or worker rights.
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.
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.
It's an excellent sign they're both invasive and disrespect the law.
If it's 1% or even 50%, you may come out ahead by eliminating them. If it's 99%, it might present practical problems.
I think Elisa learned more from the experiences than I did though, she seems like a very thoughtful person.
WTF? Evil.