Live data from Hacker News

I think I know why you can't hire engineers right now

cushychicken.github.io

661–670 of 927 posts

Re: I think I know why you can't hire engineers right now

#661
post #591

Earlier quoted context omitted.

The app that people use to access their money is absolutely core tech. If the payment infrastructure goes down (or worse: is buggy), that's a massive problem. Banks that don't consider this core aren't keeping up.

Many of our customers didn’t even use the app. They could phone up and get someone to do every action for them. If your product can operate without the app then the app is secondary

Financial transactions by phone? To me, that sounds inefficient, expensive, error prone and insecure. All banks I know provide an app and a website to their users. Having to talk to a person to handle your money is something from the 1980s.

Of course for very specific high-value transactions, it may be useful to talk to someone, especially when it's something that also involves advice, but most people only do that kind of thing two times in their life: for mortgage and pension.

Modern banking does not function without the app (be it web or mobile).

Re: I think I know why you can't hire engineers right now

#662
post #244

Earlier quoted context omitted.

I don't think that is accurate. I would say it is a combination of both. The article you link to obviously makes it sound like it's an exclusive function. But it simply dismisses the fact that not everyone can reasonably sustain the savings rates mentioned. Sure, there's reports of very motivated people that live on next to nothing and have a huge savings rate for the first 10 years of their working life, abstaining…

> If I increase my take home pay, I can stay on the same savings rate as before and retire earlier (assuming that I don't want to make a certain percentage of my last pay during retirement and instead have a fixed goal for my retirement income). That would be extremely unwise - if your savings rate hasn't changed then that means your lifestyle has inflated, and so your fixed retirement income will be a bigger step do…

FWIW, this was simply an example to refute the absolute claim of the parent and the article that only the savings rate matters for when you will be able to retire. This one counter example disproved that.

Now as for your claim, I would agree that it is generally unwise to do that. It doesn't necessarily mean that your lifestyle has inflated in a bad way though.

If I make 50k with 10% savings rate (5k savings), single bread winner w/ a family of 2 and I get a raise to 55k, I will now save 6k w/ a 10% rate. The other 4k are used to finally be able to go to the museum with the kid, buy them some used skates so they can go skate in the park in winter whenever they want instead of renting skates once per winter etc. While I agree that this is "a lifestyle inflation" I wouldn't say it's one that affect the retirement in the way you mentioned.

Now if we are talking lotto winner kind of raise while keeping the savings rate at the exact same and low mark, I would totally agree with you. 50k w/ 10% gets a raise to 300k and starts behaving like the parent mentioned (fancy apartment, extravagant travel etc.) I completely agree with you.

Re: I think I know why you can't hire engineers right now

#664
post #196

Frankly, it's always hard to hire engineers. Either you can't find talent or you can't find money to hire talent. No matter what the personal choices and predilections of any engineer, the software industry is fundamentally constrained by the twin forces of capital and engineering talent. When there is lots of capital, there are a lot of companies, and there is insufficient talent. When there isn't a lot of capital,…

"eliminate the need for code to generate business results" - can you give an example of how you do this? Sounds interesting.

One time (BitFlash) I was building an SVG rendering engine for mobile devices back when 32kb was a huge amount of space on a phone and we had to count the microjoules of energy per instruction for battery efficiency.

We started with C++ which is very flexible. As I built it and optimized it we had two problems. One the SVG spec was a moving target and second the same optimizations we learnt had to be applied across the entire codebase in many classes simultaneously.

The obvious solution is to build a domain specific language right? But we couldn’t afford to run an interpreter at runtime. So I wrote the spec as a mix of C++ structs, enums and comments and a Perl script (it was 2000) to compile that code into optimized C++ for the parser and DOM and rendering loop.

I also built my own metabuild tools (this was 2000) to generate makefiles and the like to quickly cross compile to new mobile phones. We were able to cross compile and deploy to a new handset from a manufacturer once while the bigwigs were in a meeting talking terms. That definitely impressed.

Another example was that I was brought in 4 months into a VoIP SIP hardware phone project that was floundering. It had gotten nowhere. I had never built such a thing but I had to quickly build a working phone.

We had a very detailed spec from the distributor of the set of use cases we had to implement.

In my opinion, hardware has this annoying requirement to never crash or have bugs because hotfixing is a nightmare. These phones were for trading desks so I think the pressure was high as well to not go down.

With four months lost I know most people would just dive in and start coding and never stop until a spaghetti ball was shipped.

However that is the road to hell as you are just creating chaos in the codebase instead of order. The whole point of logic is to create order.

So yes I did dive in to the code just long enough to spike one phone call with the SDKs to make sure I knew how the tools worked.

But my solution was to “waste time” after that to draw out the spec document as a hierarchical finite state machine in PowerPoint.

Once I had a simpler visual of what the spec was saying, I then wrote a hierarchical finite state machine library. And I then wrote out the phone logic as in the language of the HFSM instead of as a spaghetti ball of smash smash code.

This let me contain all the mutex logic in a tiny part of the code base so I could stop worrying about race condition bugs which plague phones.

I was also able to build a test first library with another domain language. I wrote the tests as message sequence charts (2D arrays with mock objects) that drove the phone. The spec had a number of MSCs so this made it a lot easier to prove correctness.

By going “insane” like this I did save the project’s bacon. Not only did I deliver on time, but I was able to prove the SIP SDK the distributor ordered us to use was broken fundamentally and survive the obvious, “must be your code!” objections rather handily.

Those are fun stories; I painted myself in the best light of course. 95% of the time I was panicking before I came up with a solution and the other 95% I was panicking management would wonder why I spent two months on a side quest. Those are so long ago that I think it is ok to tell them.

Nowadays we have package libraries that full of modules like this. It’s amazing how much people have simplified with better ways of expressing ideas as data instead of code.

Re: I think I know why you can't hire engineers right now

#665
post #559

I think there's something else that's necessary that doesn't align well with the things in the article, and which is currently lacking in my current work environment, but which is kind of hard to describe succinctly. Basically, my job requires using a lot of tools and technology and processes created by other people, but none of those tools are easy to use or well documented. In order to get stuff done you have to ha…

> My opinion is that once an organization is a certain size, everything really needs to be written down and easily accessible. I shouldn't have to regularly ask people how to do basic things, it should be on a wiki. If it's complicated, it should be in a training video, or a user manual. This %100. Automate all the things, but for any part of the process that cannot be automated/scripted, write it down. And don't jus…

Write it down even if it can be automated. And make sure the documentation is also comprehensible to people who don't already know how the system works.

Otherwise you're setting your company up for a miniature re-enactment of the Butlerian Jihad at some point in the future.

Re: I think I know why you can't hire engineers right now

#666
post #559

I think there's something else that's necessary that doesn't align well with the things in the article, and which is currently lacking in my current work environment, but which is kind of hard to describe succinctly. Basically, my job requires using a lot of tools and technology and processes created by other people, but none of those tools are easy to use or well documented. In order to get stuff done you have to ha…

> My opinion is that once an organization is a certain size, everything really needs to be written down and easily accessible. I shouldn't have to regularly ask people how to do basic things, it should be on a wiki. If it's complicated, it should be in a training video, or a user manual. This %100. Automate all the things, but for any part of the process that cannot be automated/scripted, write it down. And don't jus…

Even if it's all documented with a README, with container images and Ansible playbooks or whatever to make it all happen… still people will be complaining that it's oh so complex and that's not how we did it in my previous job and what about secret management, or load scaling, or full disk encryption, or how would this be deployed to a moon-based server, or whatever they can think of how the probably less-than-average crap you've built isn't maximally convenient for them.

So, even if you have everything 100% automated, most people will look at that and conclude that your automation is complex legacy bullshit and you should have automated in some other way.

Just saying.

Re: I think I know why you can't hire engineers right now

#667
I recently took a management class to wrap up my BSCS that discussed Maslow's Heirarchy of Needs [0], which I thought articulated some feelings of need I have had throughout my career(s) in facilities management, project management, and general IT. In a nutshell it describes 5 stages of needs: physiological, safety, love and belongingness, esteem, and self-actualization.

For myself, this certainly rings true. I was fortunate to get my salary in a comfortable spot early on in a career (outside of tech), and spent a few years in that comfort zone to begin dialing it back often taking salary cuts to move towards things that were more interesting and/or had better working conditions. The security kept me around, and now that I have the physiological and safety needs "locked in," I can't imagine myself pivoting into anything else - it's a rat race to the finish line from here, and maybe I'll climb up the levels of the next 3 in the hierarchy.

[0] https://en.wikipedia.org/wiki/Maslow%27s_hierarchy_of_needs

Re: I think I know why you can't hire engineers right now

#668
post #661

Earlier quoted context omitted.

Many of our customers didn’t even use the app. They could phone up and get someone to do every action for them. If your product can operate without the app then the app is secondary

Financial transactions by phone? To me, that sounds inefficient, expensive, error prone and insecure. All banks I know provide an app and a website to their users. Having to talk to a person to handle your money is something from the 1980s. Of course for very specific high-value transactions, it may be useful to talk to someone, especially when it's something that also involves advice, but most people only do that ki…

Lol, if you say so!

Re: I think I know why you can't hire engineers right now

#670
post #462

Earlier quoted context omitted.

> Healthcare, 30 paid holidays, unions, paid overtime, weekends and calls off work come extra (it is 40h week period, want more pay for it), retirement, flex time, ... If you are in your 20's, it is totally worth moving to the US where you can get paid 500K+ per year if you navigate your career efficiently. I posit that making this much money more than covers any of these additional expenses that you call out.

You say that like moving to the US is as easy as pie. Emigration to the US is incredibly difficult.

It goes both ways. Emigration _from_ the US to another western country is also incredibly difficult.
Post reply on HN