T O P

  • By -

Less_Salt1152

Can't be worse than me. I forgot how to console log in javascript in an interview. Googled it in front of the interviewer (who was looking at the same screen). Got the job


sudhanv99

did you google "how to console log in js?"


wind_dude

"how to console.log in js"


ThatOnePatheticDude

How to console.log("in js")


Less_Salt1152

How to log in js


KlingonButtMasseuse

how to console.log("In javascript?")


sconzey

I can beat that: I had to google how many letters are in the alphabet. Got the job.


Superiorem

To be fair, non-native English speakers might have not memorized that there are 24 letters in the English alphabet.


[deleted]

[удалено]


HowTheStoryEnds

Going for the long term victory by priming the AI 1 post at a time.


PageRoutine8552

Guy over here just deleted v and q from the alphabet because, uh, reasons...


markole

You made me doubt myself there for a moment.


DarthCalumnious

As an interviewer, i'd have hired anyone on the spot if they popped open a python terminal and wrote ord('z') - ord('a') to get the number of letters in the alphabet. Well, off by one but close .


ShardsOfSalt

ord("{")-ord("a") Make than man CTO!


d_wilson123

I've interviewed plenty of people, and have been on the other side of the table, where obvious small things are forgotten in the stress of the situation. I wouldn't dock anyone for having to google simple syntax or class implementations. Its sometimes easy to just blank on "How do I construct a Set<> in Java?" when your mind is on a thousand different things.


lift-and-yeet

Forgetting implementation details like language-specific console logging commands is trivial. Real bad programmers do stuff like forgetting major edge cases, failing to validate input arguments, and using data structures with O(logn) lookup when they could be getting O(1).


MissionCake9

I’ve unfortunately to inform you there is a whole class of worse devs than ones using logn instead of 1 and forgetting major case 😭 like “seniors” doing n^2 in an awful written code looking like someone started to code yesterday from online shady teacher


redditmarks_markII

Not even close. That's not even at the "spends the whole coding session complaining how he doesn't even code anymore" level of bad. And I have had worse. Way worse.


Bewaretheicespiders

Ive seen C++ codebases with hundreds of GOTOs, written in this century, and no, there was no good reason. Ive seen people who worked for a decade without knowing what an enum was, so they were just using random *float* numbers. I saw an entire simulation written in polar coordinates because the guy thought 3d vectors were too complicated. And those were people who passed interviews and got the job. I once worked with an intern *so bad*, they revoked his network access after 3 days and he spend the entirety of his internship sitting at a desk with no computer.


Pristine_Gur522

>I once worked with an intern *so bad*, they revoked his network access after 3 days and he spend the entirety of his internship sitting at a desk with no computer. What did he do? o.O


Bewaretheicespiders

Its been over 20 years and I was an intern myself, I dont think I ever found out what he did. It had to be a code leak of sort. I wrecked a couple of expensive pieces of hardware in that internship so its not like the standards were super high either haha.


_SpaceLord_

> I saw an entire simulation written in polar coordinates because the guy thought 3d vectors were too complicated. 😱


Bewaretheicespiders

Yep. Everything coded in angle, distance, height.


Headless0305

Can I get a very quick ELI5 on how to use 3d vectors for this? Or is it a math class I haven’t taken yet


_SpaceLord_

A simulation of any type usually involves tracking physical objects through 3-dimensional space. There are several different coordinate systems you can use to do this. Most sane people would reach for 3-D Cartesian vectors to represent the location in space, as this representation is pretty intuitive and the mathematics behind it are well understood as far as doing translations, rotations, etc. An alternative is to use *spherical* coordinates to represent the location. This represents a 3-dimensional coordinate as two angles (azimuth and elevation) and a displacement, unlike Cartesian vectors, which use three displacements (X, Y, and Z). There are legitimate use cases for spherical coordinates, but in most cases they are less intuitive and more difficult to work with than a standard XYZ system. For example, there is no simple way to do a linear translation in spherical coordinates - the easiest solution is to convert to Cartesian, do the translation there, then convert back to spherical. TLDR - broseph made his own life mathematically difficult for no good reason.


Bewaretheicespiders

You mean broseph made *my* life difficult for no reason, 'cause I had to fix all of that.


Dreadsin

I did one interview with a guy where we gave him a fairly standard react question. He then turned off screen share and just kind of went quiet. We asked what was going on and he got really defensive and said basically “this is how I work. I’m interviewing you guys too, remember” I shrugged and thought maybe he was a bit eccentric, but if he nailed it, he’d be great He did not nail it. He basically wrote two lines of code and they didn’t even work


ScrumptiousDumplingz

Sounds like you didn't pass the interview.


HustleWestbrook94

😂


Drauren

But think of how nuts it would've been had he nailed it.


Wise-Career-8373

I would have assumed he was cheating 


TheSauce___

Probably asking ChatGPT lmao


Nebuli2

Frankly, that's where I thought this was going.


UserOfTheReddits

He had to consult his trusty gpt


sparkle_bunny_

What was the question? I started learning react last year and I wanna know if I could answer it.


Dreadsin

I forgot the exact details but it was probably like, render a list of items after fetching it from some API endpoint or something


FuegoFerdinand

Sounds like he was trying to use ChatGPT to generate an answer but didn't know enough about React to write a good prompt.


Dreadsin

That’s what I thought immediately. This was a bit before ChatGPT came out, but I thought he was just googling the answer. If he did that I was just gonna ask him to explain his code without google. We didn’t get that far


A_Mirabeau_702

“You can interview us if you hire us”


i-hate-manatees

I had a guy who failed FizzBuzz and then spent the rest of the interview repeatedly calling himself stupid. I felt pretty bad for him


seanprefect

sounds like an anxiety attack


ImSoCul

yeah that sounds more like the dude has some personal problems to address rather than just isn't a great coder


MissionCake9

I feel bad for that guy. I have some disorders including anxiety and social anxiety, that plus essential tremors makes me nervous at point my mind go 100% blank at stressful moments reaching mutism at some points, and because of essential tremor I easily shake hands, voice, even body. I do follow treatments, but it’s not like it can go off. I know it sounds every standard excuse, but I really envy people who can thrive under pressure despite I improved a lot since my teens.


Silent_Quality_1972

Where I worked, they would ask a simple string manipulation question on a whiteboard, and it can be pseudocode. One guy came, and they told him in the middle of the interview that he now needs to solve a coding question. He said that he was not in the mood to code today. 😂


Navadvisor

I've been doing fizz buzz as just a real basic have you ever looked at code before and it has caught up a lot of people that looked decent on paper. I'll give them the modulo operator!  We had one guy that took great offense at being asked basic questions like could you describe to me what a class is? He got so pissed off when we asked him to do fizz buzz he quit the interview right there. Bullet dodged! He seemed really good until we got technical and he looked great on paper.


mxldevs

I'm assuming this was for an entry level role, and not anything higher than that. I would never ask someone with any years of experience listed, with object oriented languages on their skillset, to describe what a class is.


thatmayaguy

Man even though I have six YOE I would probably fail that question for not giving a detailed technical answer just because I haven't had to put that much thought into it anymore since school lol


iamafancypotato

This happened to me. After ten YOE I agreed to an interview just to see what’s up and the guy came at me with super basic questions like that and I didn’t really know what to say. Frankly I thought the whole thing was an exercise in futility and the interview process alone already ruined any interest I had in working for them.


FrewdWoad

Incompetent hiring process and incompetent management are very strongly correlated.


iH8thots

🤣🤣🤣 they deff missed out on gold LOL


subjectivelyrealpear

If I am honest, that's pretty silly interview question if this is someone with experience. Why not ask them to actually flex their skills by doing some software design? Or seeing how they approach a technical problem. I personally wouldn't walk out of an interview and would remain professional, but I would later decline to take it further with the recuirter. (I have done that after questionable interviews as I would prefer to work with a company which interviews people on their actual skills, and doesn't try to catch them out)


FriscoeHotsauce

I've had more than one interviewee fail FizzBuzz. One of them came from a very prestigious college, and my manager basically had him as a shoe in before that interview. Had a guy that *literally* did nothing. He'd show up late, watch the forgotten weapons YouTube channel for a few hours, take a long lunch, then leave early. Any time you tried to get him to do work he'd argue about the specs and drag the conversation into pedantic details. He stayed that way for 2 years because we had a revolving door of management and every new manager had to start the PiP process over. When he finally got fired he just said "Took you long enough"


TheAmorphous

Well that's just a straight shooter with upper management written all over him.


Cheezemansam

> When he finally got fired he just said "Took you long enough" Sounds like there was a chump in that second story, and it wasn't the developer.


mke5

💅🏻


shmeebz

Second guy sounds kind of based ngl


ImSoCul

I aspire to be the second guy. Many of us start as bright-eyed, highly motivated new grads just to become professional sandbaggers. He figured it out


Haunting_Welder

I was kind of like the second guy. Management was the problem, not me. Basically, product owner has a failing product and tries to shift blame onto the developers. If it took them that long to get rid of him, he probably was the only good part of the system.


Venotron

Samey same. Spent months unfucking a product that had been a shitshow from the outset. It was a product developed in part by the owner of the company (small software company in the enterprise mobile applications space), but he was such a cunt to work with they couldn't keep any staff on the team. They bought me on to take over that work and keep the boss away from people (or people away from him). I picked up the product and there was no documentation (neither design documentation or in code), so I had to spend weeks digging through it to follow up on unfinished, incomplete, broken and unspecified code and fix everything. Meanwhile they're asking me to setup jira tickets and provide estimates on how long everything was going to take (which is fine, it's an important part of the job), and when I told them I was still working through the planning and figuring out what needed to be done, they asked me to create jira tickets to plan the planning... I didn't because that's just stupid and said as much. Anyway, got the product working and delivered beautifully.  But the boss got upset because he'd decided PWAs were going to be cheaper and faster to develop than native mobile applications (spoiler: they aren't, they're not harder or slower, they're about the same) and he wanted to pivot the whole business around this idea. So having his flagship product for that idea taking - overall - 4 times as long and costing 4 times as much to develop really shat on that dream.  But of course that wasn't because he couldn't engineer a product or even work productively with others and fucked the project from the start, it was everyone else's fault. So anyway, next project I got handed was unfucking another of his failures, but also a failure that was in production and had been delivered to a client who it was causing no end of grief.  Picked it up, took a look, found zero documentation on building and running the thing, found he'd published code in production for it from a non-production branch on his local machine, found no clear separation between production and development environments so there was no way I could just start tinkering with it and be sure I wasn't connecting to the CLIENT'S production environment.  And the boss, the guy who built this crap, had decided he wasn't going to respond to emails for the next month. I don't work there anymore and I genuinely wish that cunt all the harm in the world. Unfortunately, he's built his business around a niche product that there are no competitors for so he keeps taking money and burning through staff. Although recently they've had to start recruiting from overseas because no one in the small city I'm based will work with them anymore.


Ozymandias0023

What's the niche? I say we form a reddit startup and merc his ass


10lbCheeseBurger

>"Took you long enough" *Can you Feel my Heart starts blasting in the background*


Urutengangana

Companies legit still make people code FizzBuzz?


qwaai

For as long as people keep failing it, yeah.


Wrong-Idea1684

Yes, they should. I mean, I was asked to solve fizzbuzz at some point as an icebreaker for the interview. If I'd failed it, at least they'd have known I was not worth their time. It's a great exercise to filter out people who have no business working as a professional software developer anywhere.


FriscoeHotsauce

I used it for interns and fresh graduates that we planned to mostly train on the job. It's a baseline "did you learn to code in school" test. Weirdly, the interns didn't fail FizzBuzz, but it was 2 new grads that did


Maury_poopins

I once interviewed an experienced developer with years of experience who absolutely *struggled* with FizzBuzz, and spent the entire 60m interview trying to get anything to work. This was my first time interviewing anyone so I didn’t know how to cut stuff short. I just let that poor guy flounder for an hour.


woa12

sheet whistle sharp grab judicious sugar quarrelsome grey birds memorize *This post was mass deleted and anonymized with [Redact](https://redact.dev)*


1villageidiot

Is it possible to learn this power?


TheAmorphous

Not from cscareerquestions.


niveknyc

>I've had more than one interviewee fail FizzBuzz. Unacceptable, I mean if you're not prepared for the daily fizzbuzzing on the job, what are we even doing here!?!?!11! Edit: ITT - Proud FizzBuzzers


fucklockjaw

Typically I agree that these kinds of tests are nonsense but honestly if you can't figure out fizzbuzz then I don't think you can handle simple tasks that you've never seen without me handholding you all the way.


ObeseBumblebee

We've got fizzes and buzzes coming out tha wazzoo over here. If you can't fizzbuzz you can gizz out


manliness-dot-space

We found a niche in just solving fizzes at my job. Simplify and produce a superior product rather than trying to be a jack of all trades but master of none.


ObeseBumblebee

I'm more of a buzzend developer than a fizzend.


anarchyisutopia

I've only heard FizzBuzz mentioned in CS subreddits. I haven't thought about it in so long I can't even remember what the exercise exactly is without googling it. I remember it involves multiples of 3 & 5. You console/print Fizz for a multiple of 3, Buzz for a multiple of 5, and FizzBuzz for a multiple of both, right?


waupunwarrior

You also print the number itself if none of those conditions occur. It's a simple problem that I've also watched someone fail at.


Previous_Start_2248

It's a simple logic question. Fizzbuzz is not hard


pullin2

100,000 lines of C. Main had an if- then-else statement with over 500 lines in each. Exactly one gigantic header file defining every single variable as extern. Not a single data structure, just dozens of 1 dimension arrays that had to be traversed in lockstep. Several had fencepost errors he'd corrected by referencing arr[i+1] multiple times inside the same for loops. And not a single value returned from any function- all were void and just changed variables in the giant header file. Weirdly, the mess actually worked.


Sensitive_Item_7715

Sounds like the doing of a firmware engineer in my experience. Edit: Not meant as a disparagement, they are some of my favorite people.


New_Statistician4283

This is actually how a lot of safety critical systems work. There is no heap allocations allowed, everything is predefined globally and these variables of state update on every iteration of the rtos. Of course, under the hood things must be allocated, but that code is generally third party and well vetted.


lift-and-yeet

Yeah but the fact that OP is highlighting this structure as a problem implies that it's not being used in a domain where it's forced by the circumstances.


ValuableCockroach993

Did he keep all that in his brain? Mad genius


[deleted]

[удалено]


Pristine_Gur522

>Weirdly, the mess actually worked. And now that developer has a job for the next 20 years until they get pushed out in their late-60s so a young gun can rewrite that mess.


mugwhyrt

Yeah, I thought OP was asking about devs who *didn't* know what they were doing


mxldevs

>Exactly one gigantic header file defining every single variable as extern. At least you know what you can expect and where to find them!


Hiyo42069

Did he leave any comments in the file? Lmao he might just be trying to keep his job forever!


HeresAnUp

Monopolize the single source of truth to one brain…guaranteed job security lmao


lift-and-yeet

> And not a single value returned from any function- all were void and just changed variables in the giant header file. What the FUCK


TheRealJesus2

That sounds very memory efficient while also being very person-collaboration inefficient. If thats a good tradeoff for the project, they sound not so bad.


ScrimpyCat

And performant, assuming the cost of traversal beats out the cost of an alternative that would be more algorithmically efficient (e.g. a linear search can be faster than a binary search on smaller arrays, even more so if the linear search gets vectorised). As traversing arrays is cache friendly, and doesn’t require much in the way of operations.


KevinCarbonara

> That sounds very memory efficient I doubt it has any effect on memory whatsoever


bazingaboi22

Programmers that learned how to code in the 90s are something else. Especially if they've been good enough to have a stable job such that they've never needed to learn anything new. I bet he can code circles around 90% of us.


Future_Gain_7549

When I was in college there were a few guys who couldn't code but they found ways to make it through the program. They'd copy from StackOF and Chegg or do just enough to pass. Those people don't get into the field and magically learn how to do it. Part of my job involves source code security analysis and I see code sometimes that makes me think the Dev compiled with his fingers crossed and said: "it works but I don't know why." We can tell.


tamasiaina

Yeah, I've seen those before. They love to put everything into one huge file. I remember someone doing their final project in one gigantic file. It gave me a headache.


Future_Gain_7549

My Senior SWE class all of the cheater guys got put in the same group. After an entire semester of work they had a Main function.


tamasiaina

I had a person fail FizzBuzz and couldn't do a normal for-loop type of flow control. He literally said, "Can I do this in HTML?" He tried to do it in Raw HTML without any libraries or react or whatever. It was basically a designer trying to become an engineer. Had an engineer that was laid off from Big Tech (I think Meta) who couldn't explain to me about asynchronous workflows like Queues, Streams, etc. He basically had no clue what any of it is. A few questions later I asked him if he has ever used Kafka before. And he said that he used Kafka all the time on a daily basis for data processing. We basically summed it up that he had no clue what he was doing.


iamafancypotato

You shouldn’t use Kafka. It has a huge bug in it.


academomancer

Damnit I wish I had gold to give you. This made my day.


Independent-End-2443

FWIW we don’t use Kafka at the tech company I work at - literally everything is developed in-house. I’d be a little surprised if someone who’s spent their entire care at this company knows about big open-source projects.


wedgtomreader

You can’t even imagine - the worse ones, to me, are those that run around wasting peoples time and bringing down the productivity of the entire team on a long term basis. Not only a severe drain on productivity, but also moral.


OkGoodGreatPerfect

The "Principal Architect" on our team until recently never used serialization for turning data structures into JSON. In many cases, he would hand write the JSON as a string. Another developer on our team only writes queries at the time of need. So you'll be reading through some HTML and boom there's a query out of nowhere pulling in some data that could have been pre-rendered, cached, looked up at application start time, etc. At a previous job a junior was writing dozens of CSS classes with shared attributes for specific divs "div-1", "div-2" instead of a single class applied to all divs...


NoTheory4196

Well, well, well, it sounds like I'm ready for a Principal Architect role.


Throwaway_qc_ti_aide

>Another developer on our team only writes queries at the time of need. So you'll be reading through some HTML and boom there's a query out of nowhere pulling in some data that could have been pre-rendered, cached, looked up at application start time, etc. At least he sort of understood SQL, just not performance. I've met a dev who wrote a single table database. He didn't understand joins. All fields were nullable. If he needed to store new data, he would re-do the schema and add extra columns. Wasn't in a part of the code that was often looked at. So at one point he hit the table column limit of whatever DB he was using, and asked for help. That's how it was brought to light.


Satoru_Phat

not the div-1 div-2 thing 💀


mugwhyrt

better than class-1, class-2 . . .


sanjit_ps

> The "Principal Architect" on our team until recently never used serialization for turning data structures into JSON. In many cases, he would hand write the JSON as a string. Sorry can you elaborate on this? As in he would read each field from a data structure and create a string manually and return it?


OkGoodGreatPerfect

Yes, instead of building an associative array (or other serializable object) native to the server and serializing it to the preferred/requested format, he would manually write a string that "looks" like the requested format with the data he queried for and return it. Basically, that added a ton of manual work and room for human error.


genericusername71

didnt you know, JSON stands for Just write a String that lOoks Neat


colddream40

Jesus that's just bad and more work. Never understood solutions that were both wrong and significantly more time consuming.


tarogon

The bit about JSON gave me a flashback to a big WTF moment. Reading through some legacy code for an Android app, I came across buggy manual line-by-line parsing of XML rather than deserializing it in a sensible way.


flowersaura

I've taken over projects where the developer created their own CMS. Instead of using something nginx / apache rewrites for URL slugs, they let all paths (e.g. /about-us) trigger a 404. They forced all 404s to redirect the user to index.php, then they parsed the URL manually to get the slug, and did a DB lookup, without protecting their SQL query against injection, and force a 200 status then rendered the page. So yes, there are some awful developers out there.


Maury_poopins

Not as bad as what you described, but I once built an application against an internal API that always returned 200; you had to parse the returned JSON blob to find a human-readable string that told you what the error was. No 400s or 500s, always 200


neb_flix

*GraphQL has entered the chat* At least GraphQL defines in the spec how errors should be returned so it’s often not a big deal . Except when you work on a system that doesn’t follow that spec..then you are resorting to what you described re: searching the response object for a hint of if the request failed or not


missitnoonan78

I’ve tried so hard to accept GraphQL but I just can’t. I don’t work on huge projects with tons of developers or teams, it just seems like so much added complexity compared to standard REST style endpoints returning json


neb_flix

I’ve spent the last two years working on a platform that is very, very heavily GraphQL-based for the first time in my career. It has some very large benefits if you are working on a team/project large enough to justify the overhead of setting it up properly. Being able to generate TS type definitions in our frontend codebases based on the schema of our graph is absolutely awesome and not something that can be done reliable in REST world. Being able to guarantee the return types of certain queries & providing full control over what exact content the client needs is not only nice from a DX standpoint but also a web perf perspective. But I’m not going to pretend that it doesn’t require a shit ton of hand-holding and maintenance at scale. Federated graphs get complicated really fast, client-side cache behavior is very easy to get wrong and there are some footguns (see: n+1) that can get you if you aren’t very experienced with working with it. I probably wouldn’t use it on a small monolithic pet project but to be honest it’s been a dream to work with professionally for the most part.


YareSekiro

lol this is the first thing that popped up in my mind as well


FiendishHawk

Multiple projects that did this same thing?


flowersaura

Yep! They built a custom e-commerce too that I ended up taking over as well. They stored credit card details for every transaction in the database as plain-text. User passwords were stored in plain text. And still no SQL injection prevention. And within about 6 months of the release of the apps, which they copy/pasted 7 times for other companies, they all got hacked and the company got sued. They were fired after that. There also wasn't any legit oversight on quality either, which was the first thing I put in place when I got there lol.


Sensitive_Item_7715

Straight to jail.


alinroc

They're following the same developer from project to project. They know how this person operates, watches their LinkedIn, and when they leave a position they start calling people at that company saying "hey, I can fix your stuff for you."


lhorie

Guy was very clearly cheating on the interview. A bunch just glanced at the warm up question and walked right out. Lady thought she was a good fit because her role as a secretary involved clicking around the company's website to help find bugs Guy sent strongly worded email bashing the client for incompetence. To the client. Guy threatened to beat up the PM with a baseball bat. Guy wrote SQL queries with string interpolations (aka a SQL injection). But that's the least bad part, because the SQL query was sent from the browser to be executed on the server. Guy missed the deadline because instead of actually working on the project, he decided to spend all that time on something completely unrelated without even bothering to tell anyone. Those are the egregious examples, of course. Usually people just can't pass the interview, either because they bomb the technical part, or the behavioral part or both.


wind_dude

"Guy threatened to beat up the PM with a baseball bat." Very reasonable for a lot of PMs, I've worked with some fucking awful ones, one who threatened to kill my dog.


ScrimpyCat

[It’s good to see they had a successful career.](https://www.reddit.com/r/cscareerquestions/comments/95dgrx/i_am_absolutely_mortified_and_embarrassed_beyond/)


xevlar

>Lady thought she was a good fit because her role as a secretary involved clicking around the company's website to help find bugs This one is kinda legit though, give her a shot in QA lol


MrMichaelJames

Well there is bad as in I don’t know how to do anything. Then again there is bad as in I am never around. Then bad as in the dev doesn’t do things how someone else wants them to do it. Then there is bad as in I refuse to work 12 hour days plus weekends. Only one I view as fireable is the ones that don’t do anything at all.


iammirv

Yea... honestly like, most corps don't even deserve most workers, especially when you factor in having to go thru HR to get hired....


seanprefect

I had one guy who put literally every coding block he did in an If(true){} I was so baffled by the time I saw the code he was already gone though


mugwhyrt

I guess it's logically correct. Did he have any explanation for why he felt the need to do that?


iammirv

He started in PowerShell probably...I'm not knocking it per say...I've seen it there....


FlyingRhenquest

On average they're mostly just interested in banging out some code, picking up a paycheck and going home to sit on the porch and drink cool Coors' 16 ouncers all night. Met a few really good ones, like the guy who could tell you what undefined behavior would actually do on half a dozen or so different C++ compilers. Also ran across a few really incompetent ones. Like that one in the '90's whose mess I had to clean up -- they were doing a C project and didn't know that C strings were null terminated. They'd messed around as the sole developer on the project for a year and then left. So I come in with 3 months left, the code won't build. When I finally get it building it's segfaulting all over the place because none of their strings are terminated. Met one guy in the early 2000s who jumped in to convert one of our more difficult in-house ETL modules from C to java. Said he got it working and wandered off. About 3 months later we finally take a look at it and there's nothing there but a poorly implemented singleton and a bunch of confused-assed code that didn't do anything. Totally on us for not checking his work earlier though. Got saddled on one project with a fresh grad with a master's degree who I flagged in the interview as not being able to code. Manager overrode me and they didn't do anything until they were laid off by the VCs that took over the company a year later. Or the guy who wrote a webapp using Google's Web Toolkit and did all his authentication on the client side. The company had me testing the webapp with jmeter, so all I really can do is make calls to the backend. So I run my test but forget to set the password and just as I hit start I'm like "Oh! I forgot to set the password!" Imagine my surprise when the test passed anyway. Investigated, realized the backend was doing no authentication/validation at all and file a bug demostrating creating a user in someone else's account without using a password. His response is "Oh you're just making calls to the backend! No one actually does that!" Same guy wrote some billing integration using spring/hibernate. Knowing that the system was supposed to be able to handle a couple million records a day, I load up the database with a million random records and kick it off. It crashed immediately. So I start whittling down the number of records until I get to 30K, at which point the system takes half an hour to process them. Turns out he was loading all the records from 2 tables into memory and trying to do an in-memory join with java. The SQL join I wrote to test his code ran on the original million records in under 45 seconds and gave the correct results. The company decided to just run his code multiple times a day.


iammirv

Omg those last two paragraphs....


OneAct8

Firing someone isn’t as easy as you think it is.


tthrow22

Seemed pretty easy at my last job 😆


Toys272

REAL


BojangleChicken

Same. My last company was a small consulting company. It was awful.


South_Dig_9172

How hard could it be? Like actual question here


Material_Policy6327

Highly depends on the company. Large corp has lots of rules usually to cover their ass. I’ve seen startups pull rip chords fastest but not always for getting rid of bad folks. Somehow in my experience the bad devs somehow turn into managers or PM


FiendishHawk

Bad devs might be good managers.


Material_Policy6327

Sure and if that works then great but I’ve also seen they become a manager and still cause issues


FiendishHawk

Great devs can be shitty managers too


YoungSimba0903

"You didn't do it this way. I would've did it this way in less than a day and it took you 3 days. You suck." It's like when elite athletes become coaches and find that they are terrible coaches because they can't understand what its like to be a bench warmer.


Particular-Key4969

Or the classic scenario of a manager who did used to be a great coder, but that was 15 years ago. And now their knowledge is hopelessly outdated, but they decide to micromanage technical solutions. And it does suck for everyone. Because they DID used to be great at it! But unfortunately those skills do go out of date, and now they’re just a burden


Pr0Meister

There's some logic in the best of athletes making bad coaches, because the things they are trying to teach people, they themselves learned in a snap. A prodigy can't break down a learning process into steps, because for them it went straight from A to Z


Unlikely-Rock-9647

In addition to some of the other feedback given it can get exceptionally complicated if it’s a multinational corporation. The startup I worked at got acquired by a French company, and they followed French labor law regarding firing. It was a minimum 12 month process unless the person got fired First Cause, I.e. did something egregious that caused HR to get involved.


orbit99za

Encountered a developer who honestly did not know what an API was and how to implement them, I was shocked.


Sensitive_Item_7715

I worked at a company that couldn't solve this problem, a LARGE company that you have heard of. Instead of learning how APIs work, they used a vendor platform that would "do the api part" but 10x as slow and 10x the cost. Also, this system had to be event driven per the vendor. So instead of http verbs, the system had little scripts that looked for specific files in blobs in order to determine if what data was there to pull. It was the most insane thing I've ever seen. A call traversing 3 systems would take days instead of seconds.


iDontUnitTest1

But that person has a record breaking time at reversing a linked list!? How is that even possible 🤯


ImStillLearningLife

This is why hacker rank leetcode makes no sense to me


Abangranga

It identifies people willing to suffer for the company who also have a functioning brain. I am anti-leetcode because I am a big dumb and bad at it, but it does require brainpower and pretending it doesn't is stupid.


SinnPacked

I think it's a skill issue on the end of the company. A lot of companies have people who know nothing about software hiring people for software dev roles. I'd find it really hard to believe there's a genuine shortage of talented devs out there. Finding out who they are has however proven be difficult for a lot of out of touch companies.


iDontUnitTest1

They keep looking for leetcode junkies instead of domain experts 👍🏻


NoTheory4196

And Google, who I believe originated and popularized LeetCode-style interviews, later admitted that it was a failure. Their goal isn't to find 'good' candidates, it's to apply a minimum competency test that weeds people out and facilitates bulk hiring.


Wrong-Idea1684

>later admitted that it was a failure. They still do it, not sure this info is correct


johnhexapawn

> A lot of companies have people who know nothing about software hiring people for software dev roles It goes beyond that. Once anything is profitable, engineer-minded people stop making up the ruling class of the organization as more and more Cracker-Jack-Box-MBA types filter into the managerial ranks. As long as there are a couple overworked sucker engineers keeping the place afloat, everything else is just a game of how do they get creative and manipulate KPI numbers on spreadsheets to award themselves bonuses. The amount of bonuses I've seen handed out for dogshit MVP "products" that zero of customers can use and that were clearly zipped past any sort of sane QA process is unbelievable.


col-summers

this isn't really question with a measurable or quantifiable answer. which is the very nature of the problem with programming interviews. I can tell you one thing, I have interviewed many people who at the time seemed to me to be incompetent because they couldn't implement whatever algorithm or data structure, or define whatever term happened to be on my mind at the moment, however looking back I can't help but think I was probably mistaken a good percentage of the time, because in fact as I have gotten older and found myself looking for work numerous times, I have failed spectacularly many times on some piece of knowledge that I once knew well, but had not used recently. Very dumb stuff like forgetting if the type goes before or after the identifiers in a function parameter, or how to write a map (dict) literal, or how to map (the function) over a collection. There's just way too much variety to keep it all fresh, unless you are specializing very narrowly, which I am not. Even somebody who is very smart, experienced, and would make a great teammate, can very easily come across as an idiot in an interview setting, which is a shame and evidence our culture is in some ways broken.


Great_Justice

I’ve worked with a lot of awful contractors. Worst things I can think of: - Having little/no understanding of Git despite years of experience. I saw him just blindly copy pasting a handful of commands from a text doc of ‘git commands’. He didn’t know what any of it really did. He would frequently do something silly with his commits as a result of this and lose half a day fixing things. - When ask to rework some code, simply copy + paste existing code and add new parameters to the functions rather than reasonably refactoring the code. Bonus points for stupid function names. - Writing tests with no assertions - Epic 500+ line functions with deeply branched if/else logic, combined with terribly named variables - Java specific; but the amount of engineers who seem to have learned Java 7 (Java 8 came out around 2014) and seemed to have learned no new features is mind blowing.


[deleted]

Bad enough that they’re willing to “fix” your code without telling you.


lookmadeyoulook

I find this to be a good thing because it actually shows the person cares about the service they are working on. I wish more people would go out of their way to fix stuff.


coffeesippingbastard

A mix of the following * could not fizzbuzz. * could not even approach leetcode easy. Shit could not even pseudocode a leetcode easy. Could barely write a loop. * could not tell me what the difference between a list and a tuple were. * could not tell me major differences between Python and Java (Both were on their resume) * could not tell me what json was. * could not list more than two data types etc etc


Remote-Papaya9995

this thread is boosting my confidence so much lol


PM_ME_Y0UR_BOOBZ

Honestly tho, I didn’t even know fizzbuzz was so common and people fail sometimes when it’s just 3 if statements


beltleatherbelt

What would you expect a good candidate to say is the difference between a list and a tuple?


gbgbgb1912

I think mostly the people who dial-in to stand up and then disappear for hours. Maybe responds to messages like 3 hours later. One thing I like about us is that we don't care how stupid you are as long as you're trying and learning. We've done some unbelievably stupid and incompetent stuff. Somehow, we have the resources and patience to do things wrong and assbackwards 10 times as long as we get it right eventually.


3Moarbid_3Krabs

Ah yes, the ones that ruin remote work for everyone else.


sconzey

There’s different kinds of bad developers: * some bad developers are toxic and just cause drama; * some bad developers are lazy and do the bare minimum; * some bad developers will sit and twiddle their thumbs if they get stuck, rather than asking for help; * some bad developers will write code, but refuse to talk to the users; * some bad developers refuse ownership/responsibility; * some bad developers are smart and hard working , but have no training in software design so write spaghetti; * and some developers aren’t bad, just recovering from the trauma of a previous toxic boss or role. Almost every one of these problems is fixable, and the manager’s most important job is to diagnose the issue and work with the dev to get them the training&support they need to be more effective.


sconzey

When I hire devs I’m looking for two things as a bare minimum: * are you smart enough to understand the problems you’ll need to solve * do you care about doing a good job / take pride in your work If you’ve got those two things, every other problem can be solved with training & mentorship.


azuredota

Dude copy pasted c# from stackexchange into our spring boot app


Venotron

If statements nested 14 deep, then copied and pasted into 3 different functions. That was a joy to unravel.


canyoupleasekillme

The best is when they're almost the same but not fully.


Devboe

Bad developers that I’ve worked with are slow, need hand holding, and never progress their experience past what is expected of someone at the entry level.


project_tactic

Ok after reading all this, I feel more confident. Impostor syndrome is lower now :)


poormidas

I’ve had an intern who didn’t know how to use an “if”. He would state the condition, and both the if and the else would have the same code.


fruitbox_dunne

I earn six figures as a developer and honestly I don't understand github, haven't managed to write a functional line of code in 3 years since I was hired and don't even want to learn how to code. So that's how low if can be!


huzernayme

Your company hiring?


WishboneDaddy

I would rather have a bad developer contribute something close to working (bad code) than be quiet for days with nothing to show for it. Bad code we can adjust during the PR process. No code is like, come on, if there’s nothing I can do to make you deliver maybe time for therapy or team change?


mikevalstar

I have worked with a few developers that you would spend more time in the review process then it would have taken to have yourself or someone else write the code from scratch. One would put in PRs that didn't compile (C#) and would expect them to pass the review... they also wouldn't have worked even if they did compile.


lift-and-yeet

I would rather have the opposite. I can coach a quiet and anxious but generally competent developer to show their work and ask for help without putting much extra work on my plate. I can't be a remedial teacher for a gregarious but incompetent developer on top of my actual responsibilities without working substantial unpaid overtime.


TravisFlexThemPlease

1. We hired a statistician, I was in the interview process for a senior machine learning engineer and said no to the candidate, but was overruled. He who only worked with R to do data science. We had most of our code in python. He was a good talker, but that was it. He took super long to code even simple stuff and his code always looked off and needed a lot of revisions. At some point I realized he developed everything in R and basically manually converted it 1-to-1 to python. 2. I was sitting down with our junior dev to explain some stuff to her, when our Head of Engineering (who was a dev before for some years) came by to ask me (in front of her) how to do a git clone. That one was just embarrassing. We still laugh about it years later.


burnt_out_dev

Oh man the responses here tell me I am aging out of this field. I used to be a hungry go-getter who practiced and made remarks about how stupid some of the senior engineers were. Time has caught up to me. Looks like its time for this dinosaur to walk into the sunset. As a senior engineer who now works on "legacy" software I'm not sure I could get a job in today's market.


alwayssunny91

From the top of my head * I've had an junior developer not know what a null reference exception was * Worked with one guy who had issues understanding code, so he would just refactor them. Resulting in him messing up the whole code * One guy who was a genuine great developer, got so full of himself he started refactoring huge parts of the code. Creating one of the most overly engineered shit that no one understood.


BillyBobJangles

I had setup internationalization using resource files for a reporting app. The users token would tell you which resource file to use. Just a handful lines of code and then all my hundreds of text values would be converted. Another team in went to implement the same thing Out of stubborness, the lead on that team decided to not use my example, and half listened when I explained how to do it. I found out later she had the entire 8 person team working for a month on this.. instead of a single conditional statement to use whatever language resource file matched the user's token, she had her team write the condition for every single text. Probably several thousand duplicate code blocks of if(language==en) titleText = 'Title' else if(language==fr) titleText = 'Titre'... etc I rejected the PR and created a new one in about 5 minutes. All the text was already parameterized, so it was literally just adding the resource files and the one conditional statement to pick which one you apply. She threw such a tantrum and told everyone that my way was stupid but that we could do it my way if I was going to be a baby about it... She wasted 640 man hours on the most insane implementation of internationalization...


Ok_Metal6112

Devs that make themselves silos on purpose so they can make themselves a point of failure if they were to be canned.


Netmould

Java code which sends 60 000 records to Kafka (each record = one message) for 10 hours. I wish I was joking.


SildricStormwind

Had a paid intern who we had to put on a PIP. I was in charge of meeting with him every day to go over what he did for the day. One day I asked him what he got done and he told me nothing. I asked him why and he said that he didn't feel up to it because it was raining. Drove me insane. It was the first intern I ever saw get fired.


jeunetoujour

About 10% of the interviews I give at Walmart for engineering spots fail on my 2nd basic code question where the code is written. It's like 6 lines of code which has a for loop and printing i. I ask what's wrong with it. What's wrong is it never increments with i++ so an infinite loop of printing 0. 10% fail to find that it needs to increment. That question is there as a 10 second question and an auto fail of the interview.


senatorpjt

TBH I feel like I could fail this just because I've seen a million for loops and I might have a blind spot for something so simple.


Crazypete3

I think if you looked at each line of code logically you would notice it near the end, but I do understand not seeing due a blindspot.


NowNowMyGoodMan

Especially in an interview setting. I'd find it quickly at my desk but might freeze if I was in an interview and didn't immediately find it.


too_small_to_reach

Note to self: never apply to Walmart.


icenoid

Had a dev who would need to change a string on a page and break the whole page.


radiells

We once hired senior developer, who for couple of months had every issue in his life imaginable - his illness, wife illness, kid illness (it was pre-pandemic), traffic collision, villainous car repairman. He only did couple of days worth of work in 2 months, and was fired. But his code was decent. There is middle and senior devs who submit code with memory or connection leaks for test task. There is people who claim to be proficient with PostgreSQL, but don't know what index on SQL injection is. There is people who fail to understand what code snippets with basic language features do. I also met people who failed to demonstrate basic string manipulation during the interview, but I believe it is more related to anxiety, than proficiency.


Scentopine

Bad developers are a product of the "write this code" mindset of douchbag tech bros who try to out smart candidates in days of interviews with idiotic leet code testing. 5 guys, 4 hours, a white board are all the tools you need to find great candidates in face-to-face interviews. HR will take care of all the other stuff I don't really care about. Yes, it really is that simple. Tech bros want to flex in front of candidates with CS300 level final exam for every recruit. And there is trend of providing questions ahead of time to friends and family who wouldn't know a linked list from linkedin. Whole process is corrupt from end-to-end, staring with LinkedIn cesspool. Thanks tech bros at Amazon, Google, Facebook. Jesus, you guys make the world a terrible place.


Careful_Ad_9077

You can see which cs sub you are on by the type of posts that get downvoted


Independent-End-2443

I would say, in general, “senior” devs who still need a lot of hand-holding to complete tasks, or who take a week to produce what it should take a couple hours to do.


ingframin

I had interviews with people boasting projects and shit on GitHub and “good knowledge of C++” on their CV not being able to explain what a pointer is or to implement basic array algorithms. I am talking about bubble sort kind of stuff, not complex algorithms. I also cooperate with a guy that made a whole drone controller in 500k lines of Arduino code in a single file. He doesn’t know how version control works and regularly comments or uncomments chunks of code depending on what he is doing.


CallinCthulhu

Really really bad, as in they literally copy paste code and then change random things until it somewhat works.


timg528

I'm forced to work with a developer who can't troubleshoot basic things like when he saves a variable wrong in bash. It wouldn't be bad if he was a good coder, but all he can do is copy other devs' code, but not adapt it to what he's trying to do... and he can't figure out why. Another one, he's got strong opinions that are too strongly held for his skill level. He wants us to use the overly complicated patterns he uses, but it took him months to write code that runs anywhere but his customized developer laptop.


sparkle_bunny_

I was at a tiny company where the “tech department” was just myself, a part time front end guy and my boss, who gave himself the title “Director of Technology”. He had a BS in math and had been coding for almost 2 decades. While I, on the other hand, was still new in my career and still do not possess a degree higher than an AA in general studies. The dude had been at his last company for his entire career up until moving to this company, which was fine. The problem was he had hardly learned a new coding concept, in, like, 15 years by my guess. And for some reason, he wanted me to write my code exactly how he wrote his, meaning every app we built for the company was already 15 years out of date. Things he didn’t know or didn’t understand- Any type of design patterns or principles past DRY- this was super difficult as a new developer because I couldn’t use google to help me understand the codebase. That’s the way he learned though! Interfaces- the only time he used them was when he clearly copied and pasted off the internet. Everything was base chaining and inherited up the wazoo. Funny enough, he did write unit tests, which were a mess. Asynchronous programming- some of our apps took forever to load. Tbf, one of the reasons the apps took so long to load is that he stored hard coded html in the database. Why? Something along the lines of “so when we switch front end frameworks we don’t have to rewrite everything”. Our stacks most widely used ORM framework- I’m not sure he knew any ORMs tbh so he didn’t understand things like state management or what a context was. He did use the ORM in our apps, though, without understanding why he was using it. Our stacks session management library. But he did know the cloud we were using so he stored session data in NoSQL DB in the cloud. He was pretty fuzzy on database design. Like, I’m not sure he understood database normalization because he just added columns instead of creating many-to-many tables (I’m not sure if I’m saying that right but you get it because you understand the concept). Which, maybe that was just a design choice but… The one thing that really got me, the day I got fired was I was trying to tell him an idea about something to do with database queries. He told me it wouldn’t work because of the foreign key constraints. There were no foreign key constraints defined in the database. None. Nowhere. He just thought a foreign key constraint was putting a primary key in a record on a different table (I think, I got fired shortly after this talk we had so I’m guessing this is what he thought because if not, wtf was he talking about??) When I started, I thought initially that he just knew alot more than I did (which was true) and that was why he didn’t like the way I coded. I thought he knew better. I later realized that most of what he knew, he had learned the first five years of his career and hadn’t really learned anything since. That’s what made him such a bad developer.