I nearly failed my Electrical and Electronic Eng. degree in the 80s (because I was immature, depressed and got pissed all the time)
I missed half my lectures and practicals in 2nd year, and 80% in 3rd year)
Nevertheless, I got a good (job designing bits of Dealing Room Systems, for the Banks)
We incorporated the early Amber/Orange touchscreens (as used on submarines) to complement normal IBM/PC keyboards.
The software guys had control of that. Fairly simple for them and it worked well.
Except, Dealers get quite upset when they lose substantial money on a Trade.
On numerous occasions, they would smash their screens with the telephone handsets, breaking both.
Prob $2000 damage each time. We stopped using the touchscreens.
The Dealers were a pain anyway. "We want Porsche screen savers". They were Gods, Masters of the Universe, cos' they made millions.
In spite of my crappy degree, I did actually have a brain and taught myself good technical design skills and good engineering and safety practice. I did some [simple] software too.
No Google, but there were plenty of Datasheets, with example circuits and firmware/software books.
In short, I found I was a pretty good engineer after all.
I played What-Ifs all the time and noted that coding take lots of Error Handling and be easy to use, as well as 'pretty'
(To this day, Non-intuitive, Context Sensitive Menus and Options irk me)
I tried to make everything as robust and fail-safe as possible, with redundant options.
Of course, I have also made lots of mistakes, but overall I'm happy with my MTBC (Mean Time Between Cockups)
My first semi biggie was just designing a 96 way patch panel for coax cables in a 19" cabinet. (Several boards needed in each)
Really, I should have insisted on 64 way, space was a bit tight and my manager insisted that more PCBs and cabinet space (or even cabinets) was unacceptable.
But it was fine. Until 6 weeks later when the Installation engineers tried to install the first of several hundred boards (rushed into production from my couple of perfect prototypes).
I have slim fingers. Many of the field guys had sausage fingers. They couldn't get their fingers into the panel bayonet connectors.
Big oops. I'd done well on my other [complex] board designs and I'd expensively messed up on a bloody patch panel.
Fortunately, all was well. The Install/Maintenance engineers designed themselves a special low-cost tool to plug and unplug the cables.
Over my career I've come across engineers from genius to shockingly bad (and Managers/Directors).
Mistakes are human. Multiple mistakes (often the same ones) are unforgiveable.
Sorry this is a bit TLDR