Software Engineering is dead. It wasn't neural networks that killed him

Colleagues involved in the field, we have lost an important round of our lives.

Responsible for what is happening now:

I wish you success in your work and great happiness in your personal life.

I wish you success in your work and great happiness in your personal life.

My name is null, I’m undefined years old (it seems that’s how it’s customary to start articles here). For 10 years of my life I have been involved in IT, which I taught myself, 5 of which in commercial Fullstack Web development aka Webmacking. During all the time I burned my eyes in front of the screen, I managed to try many different languages, technologies, approaches and even areas. I worked with primitive CRUDs and highload systems, worked with blockchain, neural networks, Arduino modules, drones, bots, parsers and real people. But, as the experience of my attempts to get a job, which has been going on for 5 months, shows, I am not good enough to become part of a “young and motivated team making the world a better place.” This article is planned as a well-reasoned description in my eyes of current problems in the area in which I live and love, but in which I have at the same time become disillusioned and am now seriously thinking about remaining friends with it. Absolutely everything written below is a compilation of subjective experience, does not call anyone to anything and is generally a lie and a provocation of another impostor with…

Book 1: Air

In the beginning there was npm init

About the diversity of technologies

Of course, the world needs another web framework, programming language or browser. Immediately after we solve the current problems. Well, you know, all these boring global warmings, threats of another pandemic, military dictatorships, session games, TikTok. And I don’t have a problem with pet or student projects, but when a new technology doesn’t bring anything original, but at the same time it still becomes popular and occupies its niche, and I, as a professional, are asked to learn another skill because it’s fashionable and youthful So, if you please, should you solve problems or create them?

And no, I’m not a lazy person, accustomed to sitting in one place and not moving forward. And I have nothing against innovation. I will be among the first to master some original or revolutionary technology like React or Rasta. But stop doing the same thing in a new wrapper and calling it innovation.

About the lack of standards

Disclaimer: the author is an ordinary rogue who worked in simple companies not related to big tech and/or FAANG, and expresses his opinion on the processes with which he dealt. The author accepts the fact that large companies can have well-established processes with clear code requirements, tests and multi-level reviews.

Now let's get down to business. You can talk as much as you like about SOLID, DRY, KISS, DDD and others, but still everyone writes code the way they want. Someone, coming to an existing project, adapts and follows the style of writing code that has already been laid down by his predecessors, someone does it their own way and rewrites the existing one. Who is right and who is wrong? History will judge. Maybe the project has a design document that justifies the use of functional components instead of class ones? Maybe it describes why it was decided to make microservices in Rasta with communication via Kafka for the backend? Maybe, maybe not. The fact is that technology is often chosen not because it solves the problem at an adequate ratio of time/cost of a specialist, but because it is cool/fashionable/hype/will attract investors/the *-lead likes/username said that technology T is shit, so let’s take technology U.

And I don't care that you're a small indie company. If you call yourself “engineers”, respect that title. In other areas of activity there are standards and there are norms that must be met.

About lack of responsibility

There are no complaints about respected specialists who, with attention and at least minimal considerations about quality, close tasks every day for 8 hours. To the comrades who came to IT only for money/doing work for nothing/working in parallel at N jobs/those who think that LLM does all the work for them – maybe you’ll hang out for a while, save up for a mortgage or whatever you have in life for the main interest. And it may even be that the error in the code that your disinterested attention made will not lead to the patient being exposed to a lethal dose of radiation, a massive accident of unmanned vehicles, or that a jealous husband will not see his wife’s profile on a dating site. But “maybe” is a probability with a non-zero outcome. And we’re not even talking about financial or legal responsibility. Who will find you behind 2 layers of VPN, Whonix as an OS and private browser tabs? We are talking about morality/karma, which, of course, is nonsense in our enlightened age until a black streak begins in life for no apparent reason.

But I got too into philosophy, I remembered one bad moment from my career. No one died, but there was sadness for the whole team. In short – do it normally, it will be fine.

About indifference to the result

For the most part, this was discussed in the previous 2 paragraphs. Consider this a wrap-up. There are people who write good, structured code that solves a problem, but does it in such a roundabout way that while the tester was doing the next run of manual tests, he managed to have a daughter, study and get married. There is another party in our cozy lobby – I call them the litcode generation. These brave men raced through all the tasks on the litcode while blindfolded and with the keyboard layout randomly changing every 10 seconds. But it wouldn’t take even a lifetime for me, a simple impostor, to be able to parse the code they wrote and change anything there.

Here's the moral: I don't care that you can tell me the principles of SOLID in your sleep, just as I don't care that you know how to optimize the code to O(logN) until these 2 parts become whole. And no, no one needs to be able to write Dijkstra's algorithm from memory. Personally, in my practice I have never encountered anything more complex than a linked list, trees, or binary search. But you need to know basic things.

Book 2: Earth

Then there was npm install

The entire next section will be devoted to the hiring process, which only lazy people haven’t written about and from which I personally get the majority of my burnout. I promise to do my best physically and a small amount of remaining moral strength to be as objective as possible.

The good, the bad, the ugly

Which of the following 3 levels do you rate yourself at: Junior, Middle, Senior?

Why only from these 3? Maybe I want to rate myself as Angelina Jolie in front of a Lenovo ThinkPad on board an Apache helicopter. What is this, infringement? Cancel!

I've never been one of them. From my very first day on the job, I was ready to dive into any waters and take on any task, as well as complete it successfully. At the same time, I did everything on my own, without pulling the middle or seniors. So who was I? Junior or impostor with a skill issue?

And now, when respected HRs, following their algorithms, ask me this question, I do not have the answer for them that they expect. They don’t like the answer of the format “I can do everything your business needs and with a high degree of probability I can do it myself if the tasks are not absolutely domain specific.” And as a result

Is there 18?

How many years have you been working with N technology?

Wait a second, I’ll check with my lawyer what the age of consent for this technology is so as not to be held liable.

No, seriously. If I worked with the latest 2-3 versions of a framework, while working with it I re-read the documentation on it a dozen times and sometimes patched some internal functions to suit my needs, but worked with it for 2 years and 11 months instead of the required 3- Oh my, am I not good enough? This sounds like nonsense.

Sounds like crazy, right?

Sounds like crazy, right?

Test tasks

There were different stories. There were also basic login pages, of which I have half a GitHub, and there were also really interesting tasks that I myself was interested in sitting and thinking about. And there were also tasks for 5 sheets of Word, for which the authors themselves gave a whole month to complete it. And okay, I could simply ignore such outright impudence, I only pity those naive fools with burning eyes who will do this. But the last straw for me was a message from the recruiter telling me not to do the test because they had already hired another person. This was after 3 days spent on this test, which I was uploading to git at that very moment. Of course, I was not informed that they had candidates at the last stage of the interview. I won’t even mention how many of my submitted tests remained without a single answer. Hence the next paragraph.

Ignore

Happens at absolutely every stage. Fortunately, most after sending your resume. To put it mildly, it infuriates me when it happens at later stages. Okay, maybe I wasn't so good after talking with HR that it was worth 20-30 minutes of my life. But I cannot forgive being ignored after the test/technical social security or subsequent stages. I wasted several hours of my life, and they can’t even send me a poor template message in response. Hence the next paragraph.

Poor template messages

If I had a dollar for every message that praised my skills but regretted “deciding to move forward with other candidates,” I wouldn't need the job. I don’t even know what’s better – ignore or template.

Fullstack DevOps QA Product manager

I can also bake pies

I can also bake pies

Personally, I can write code and support the infrastructure, and I can use the blockchain with neurons and write drivers and can communicate with clients. But you are insolent and want to pay one coder’s salary for all these skills.

Techies

I am a more or less kind, friendly person and understands human psychology, so I understand the attempts of the person interviewing me to show off in front of the CTO/CEO/middle girl/all together with my knowledge of the internal structure of the T technology or knowledge of how to solve a daily problem from a literary code, so I won’t be verbose here.

Development is becoming more expensive

We are a small but proud indie company

We are a small but proud indie company

Throw away your MacBooks and gaming chairs and stop looking for “seniors” for crumbs from the table

I took your father to the movies

Are you ready to take a polygraph?

I have paws

Give parents' contact information

Will you call the director?

Provide contact details of previous colleagues

They have Facebook

Give code from previous projects

git clone https://closed-repository.com

Name – Sherlock Holmes. Address – 127.0.0.1

It’s touching when the gentlemen who hire me want to practice psychology with me.

It’s touching when the gentlemen who hire me want to practice psychology with me.

Tell us about your biggest achievement in life

Living in modern realities, I didn’t quit until I was 25 years old. No, seriously, I just got out of poverty thanks to IT, what answer do you expect from me?

Tell us about a difficult problem you had to solve

Amazing, you read the biography of Elon Musk. I didn't have any problems. All I encountered was the normal workflow.

How did you resolve conflicts in your team?

Do you have a family, children?

I'm interviewing for a job at 9 pm, what do you think?

What do you like to do in your free time?

I chase cats down the street to cuddle them.

I chase cats down the street to cuddle them.

Filter by soft skills, you say. I can be on pills at a job interview, I’ll answer.

Bottom line

Political correctness and objectivity off. The hiring process is the most disgusting part of working in IT. Not one of the phantom bugs, not a single fallen product takes away as much morality as all this rat race where you have to satisfy people who often think about themselves, don’t understand that, who are lucky to be in their place.

A person with any other engineering profession is a respected member of society. A software “engineer” is a buffoon jumping to the tune

Book 3: Fire

At the end there was npm run build

Unused, but not useless.

NFT, AI, Microservices

I understand how startups work, the process of finding funding, and that a project with AI mentioned in the title has a better chance of getting it, but stop dragging AI into your projects. No, your project doesn’t need any agent, stop trying to replace support with a brainless LLM. My first and only message for such a bot is “Call me a person.” What? Your bot didn’t understand me and is asking me to repeat it? I no longer use your product.

In general, at the subconscious level, I have an aversion to any hype and universal adoration. I don’t like hype technologies, I hate trends and fashion, I don’t like artists “adored” by millions of people. I don’t deny that NFTs, AI and others have their uses, but in most cases they are not needed where they are and are used solely for profit, numbers, not to help people. And this, for me personally, is the biggest red flag.

I'm not a techie, I don't know how it works

If I had a dollar for every time I heard something like this from a non-techie colleague, I wouldn't need a job.

We're talking mostly about QA and managers, although I also had a CEO who never wrote code in his life. And no, I don't expect them to understand Von Neumann architecture or read flowcharts of how our services work. And I’m not an asshole, I can explain how this or that feature works on my fingers. Once, on a call, show and answer all questions. Take a damn note, record a video of the call, or even put it on TikTok. Just stop pestering me every morning with the same questions, stop pinning bugfixes on me, which I will spend time on so that I can then once again explain that this is not a bug, but expected behavior.

I don’t need this new thing of yours, I’m fine with technology T

Land without legacy code

Land without legacy code

You can at least use punch cards. Just put on your cloak and don’t show it to people.

There is no doubt that some C is a worthy tool. For its time. But it wouldn’t even occur to me to use it for a food delivery site, where some unaccounted-for UB would just give the client an extra burger, not to mention something critical like honey. equipment, nuclear stations and spacecraft. Life is a movement, if you don't go forward, you go back. And sometimes you pull others along with you.

Red pill

There is nothing special about what we do. The usual profession of ordinary office clerks.

Oh, did you optimize the database query and now instead of 1.5 s the query takes 0.9 s? What a pity that no one will remember about this until tomorrow.

Oh, you make $10k a month? Not bad until you realize that this is all just a simple hashmap entry.

We are all so cool, sitting at home in the warmth, drinking a latte, not like that sucker digging in a hole on the street, laying new communications for us, right? No, keep it simple.

Epilogue

There's not much to add here. This was the opus of an impostor with a skill issue, disillusioned with his profession, who cannot do anything other than this profession. I am waiting for refutations from those successful of you to whom HR write themselves and who have 10 offers to different companies. And also a ton of dislikes and waves of hate. Peace to all.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *