Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "algorithms"
!dev What pisses me off about today's job market is that the following idea is a naive one:
Let's just find a junior position and learn on the job so you can demonstrate your skills to your employer so they can promote you.
Wroooong. Reality: They only hire the most gifted geniuses who already know everything and they don't have the budget for someone who is rusty.
Welcome to the modern world of the CompSci market, where you are expected to have expert level knowledge in every language, especially in Software Engineering and Algorithms. And if you don't remember how to write an efficient Comparator algorithm in under 3 minutes, you're screwed.
Most of the tech YouTubers are really noob engineers.
Joma was a data scientist. He is an L3 engineer at Google and he hasn't done much during the last 1 year based on his internal stats.
I saw tech leads stats while he was at Google and that dude did nothing during his time. I'm sure he was an IC before he became a lead.
Clement talks about system design bull shit but he's a math major who worked on some angular front end while he was at Google. Basically his experience in tech is mostly involving using mat-button and mat-input. He also quit FB in a month.
Listening to tech lead gives me cancer. That guy was also some front end/ mobile engineer. I don't think any less of mobile engineers but tech leads acts as if he built some large scale systems at Google and FB. His opinion about react native shows how much of a noob he is. He also talked about docker in one of his video which showed he had some fundamental misunderstanding of what docker is. In his courses, he struggles to explain simple algorithms.
I don't know how these people have the courage to claim themselves as some sort of experts in the field when they are extreme noobs. They also sell some shady courses and are robbing innocent college kids.
One thing they all do well is talk. Which I give them 10/10.11
- Get invited to apply to job
- Technical interview, guy shows up late starts small talk wasting time and gives me the exercise
- Start implementing the first algorithm, finish it passing min test cases then realize there's a solution that would make both algorithms a breeze
- I pitch my solution realizing there's no much time left, cuz we lost almost 20 min of my test hour talking about BS plus the almost 10 min he arrived late, and reassure the interviewer it can be developed faster
- Interviewer says it doesn't matter, we should finish edge cases
- Kay no problem, finish the first algorithm successfully and explain pitfalls on the second part with the current implementation
- I tell him there's a better solution but he doesn't seem to care, he says time's up
Now here's the funny part.
I get called by the recruiter today (2 weeks later) and she says "They are happy with your soft skills but feel there are some gaps with your coding, they would like to repeat the technical interview because they didn't feel there was much time to assess the 'gaps' ".
Interviewers, either I'm competent enough to work for you or not, your tests must be designed to assess that, if you see you can't fit the problem you want in the time you have left change the problem, reschedule or here's an idea...LEAVE THE BS CHITCHAT TILL THE END AND START THE INTERVIEW ON TIME. When I do interviews I always try to have one complete free hour and a one algorithm exercise because I expect the candidate to solve it, analyze it and offer alternatives or explain it, I've never had someone finishing more than 2 an hour.
You can keep your job I'll keep my time. I'll write a similar problem on the comments to pass on the knowledge for people who enjoy solving these kinds of problems, can't give you the exact same thing, also tip guys don't do NDA's for interviewing it makes no fucking sense trust me no one cares about your fizz buzz intellectual property.12
I can't figure out shit..
To be honest I created this profile just so I can write down somewhere what I am going through.
So, once upon a time I had graduated from college and went right into a corporate (has only been 2 years since). I was fortunate enough that I got assigned a project that was just starting, and even though I had no clue what was going on, I started doing whatever was assigned.
I initially worked in java and then finished all my tasks earlier than expected, so they switched me to another C++ project that builds on top of it.
Fast forward 2.5 years, I'm now the team lead of the CPP project and all my friends who were in the core team have left the company.
As usual, the reason behind it is shitty management. These mfs won't hire competent people and WILL ABSOLUTELY NOT retain the ones that are. I can feel it in my bones that it is time for me to leave, but fuck me if I understand what I am good at.
I have been able to handle all the tasks that they threw at me, be it java or c++ - just because I love logic and algorithms. I have been dabbling in ML and AI since 4-5 years now, but could never go into it full time.
Now I'm looking at the job postings and Jesus Christ these bitches do not understand what they want. I have to be expert in 34567389 technologies, mastering each of whom (by mastering I mean become proficient in) would need at least 6-8 months if not more, all with 82146867+ years of experience in them.
I don't know if I am supposed to learn on Java (so spring boot and stuff) or I'm supposed to do c++ or I'm gonna go with Python or should I learn web dev or database management or what.
I like all of these things, and would likely enjoy working in each of these, but for fucks sake my cv doesn't show this and most of the bitch ass recruiter portals keep putting my cv in the bin.
If you have read so far, here's a picture of a cat and a dog.6
I am conducting technical interviews for about 10 years now.
I swear to god, the applicants keep getting dumber and dumber.
Getting more and more ashamed to talk about data structures, design patters or even the most basic algorithms, everyone with a graduation badge from udemy is now a software engineer. Fuck this shit.17
It's rant time again. I was working on a project which exports data to a zipped csv and uploads it to s3. I asked colleagues to review it, I guess that was a mistake.
Well, two of my lesser known colleague reviewed it and one of the complaints they had is that it wasn't typescript. Well yes good thing you have EYES, i'm not comfortable with typescript yet so I made it in nodejs (which is absolutely fine)
The other guy said that I could stream to the zip file and which I didn't know was possible so I said that's impossible right? (I didn't know some zip algorithms work on streams). And he kept brushing over it and taking about why I should use streams and why. I obviously have used streams before and if had read my code he could see that my code streamed everything to the filesystem and afterwards to s3. He continued to behave like I was a literall child who just used nodejs for 2 seconds. (I'm probably half his age so fair enough). He also assumed that my code would store everything in memory which also isn't true if he had read my code...
Never got an answer out of him and had to google myself and research how zlib works while he was sending me obvious examples how streams work. Which annoyed me because I asked him a very simple question.
Now the worst part, we had a dev meeting and both colleagues started talking about how they want that solutions are checked and talked about beforehand while talking about my project as if it was a failure. But it literally wasn't lol, i use streams for everything except the zipping part myself because I didn't know that was possible.
I was super motivated for this project but fuck this shit, I'm not sure why it annoys me so much. I wanted good feedback not people assuming because I'm young I can't fucking read documentation and also hate that they brought it up specifically pointing to my project, could be a general thing. Fuck me.4
Today I told to my Project Manager that after one year of taking care ( explaining thousands of lines of codes) to an external team ( another company) to migrate our application from a monolith to microservices + react, that the React UI they build looks like shit.
He replied "at least it works".
Now I must find the courage to tell him that it doesn't work correctly because instead of a simple *migration* the external team rewrote some algorithms used in a bank application and now the data are wrong.
To be honest, I'm not as excited as I was 6-7 years ago when our tech industry seen a big leap, where these ML/Deep Learning algorithms were out performing humans, Apache Spark out perfomed Hadoop in distributed computing, Docker/Kubernetes are the new phenomenon in software development and delivery, Microservices architecture, ReactJS virtual DOM concepts were so cool.
Really though, I've come realise that these software trends come and go. All you need to do is adapt and go with the flow.3
Google's algorithms seem to act stupidly on purpose so we are mistaken to think we have nothing to fear from artificial intelligence.2
5 years of leetcode with no progress. I'm giving up.
First some background, I have an undergraduate degree in computer science and one and a half years of professional coding experience which ended when I got fired for performance issues. I have worked diligently at Leetcode for those 5 years (exceptions occurred when I got ill). I have been personally coached by a google software engineer for months. I have done and given 100s of mock interviews and paid for some to be done by professionals. I have spent 100s if not thousands of hours on Leetcoding and algorithms trying to improve in any way I can imagine. I'm still not good enough.
This all came to a head yesterday when someone on Leetcode made a post about being able to solve every single Leetcode problem in a year within a year while managing a post doc degree and having almost no programming background (link at bottom of post). It made it clear that Leetcode is a game of talent not hard work. The difference between someone like her and someone like me must be noted by the programming community. The majority of people would not ever be able to accomplish that. I dedicated myself for 5 years to Leetcoding almost exclusively and still am no where near what that person has accomplished. I have put in much more work than that person and have gotten much less from it.
I believe the programming community can learn from this contrast. The culture of always trying harder and thinking success stories apply to everyone that is pervasive in programming circles is toxic. The is reality not everyone is lucky enough to be intellectually gifted to succeed and not all hard work pays off. I am proof of that and this is the type of story that needs to be shared and heard too.
I am quitting programming out of humility and recognition of my limitations. It’s ok to give up and wise to do so when you aren't good enough for something.12
The amount of energy spent to just write ‘Hi’ and click a send button is so big that we should consider banning of sending hi messages.
Instead of just saying “Hi!” we are now using analog to digital preprocessors that convert it to bunch of 0 and 1 to send it over communication layer and deliver it to other human being that will convert it from digital to analog by reading it but that is simple.
By sending message using phone we also:
- save it to local phone
- convert it to couple protocols
- transmit it over air so make connection to internet provider services that would generate logs on this provider as well as whole routing table before it gets to the target person
- save it on messaging provider disk
- probably be processed by filters by provider, sometimes be reviewed or listened by third parties and also processed in bulk by artificial intelligence algorithms
- finally delivered to target phone and saved there where that person would just change this text to their inner voice and save it
- sometimes encrypted and decrypted
- sometimes saved on provider
- sometimes saved on phone manufacturer cloud backup
- don’t get me started on people involved to keep this infrastructure in place for you just to say hi
There are also some indirect infinite possibilities of actions for example:
- emit sound and light that can lead to walking from one room to other
- the floor in your house is destroyed cause of it so you need to renovate your floor
- sound can expose your position and kill you if you’re hiding from attacker
- sound can wake you up so you wake up in different hours
- it can stop you from having sex or even lead to divorce as a result simple hi can destroy your life
- can get you fired
- can prevent from suicide and as a result you can make technology to destroy humans
and I can write about sound and light all day but that’s not the point, the point is that every invention makes life more complicated, maybe it saves time but does it really matter ?
I can say that every invention we made didn’t make world simpler. The world is growing with complexity instead.
It’s just because most of those inventions lead to computer that didn’t make our world simpler but made it more complicated.1
New excuse for not doing work:
My dev system is tied up taking data for an hour to store data for a replay system I intend to build. I need raw data from the system. I need to know how much data I will collect in an hour as well. I also need to collect said data. For about an hour. This data will be fed back into the system sans the data collection. This will allow me to replay whole jobs that our field techs perform. If they get me data I can reprocess the data and fix my positioning algorithms. Kinda fun!
So the excuses are now up to 2:
Harari said of the idea of Data-ism:
In its extreme form, proponents of the Dataist worldview perceive the entire universe as a flow of data, see organisms as little more than biochemical algorithms and believe that humanity’s cosmic vocation is to create an all-encompassing data-processing system — and then merge into it.
We are already becoming tiny chips inside a giant system that nobody really understands. Every day I absorb countless data bits through emails, phone calls and articles; process the data; and transmit back new bits through more emails, phone calls and articles. I don’t really know where I fit into the great scheme of things, and how my bits of data connect with the bits produced by billions of other humans and computers. I don’t have time to find out, because I am too busy answering emails.
I was initially entertained by the punchline, but that was soon followed by the rather depressing realisation that my only value to greater society is essentially as a data processing unit8
Play designer board games; they are multi-tenant programs, complex algorithms, modularity, meticulously balanced, and all elegantly linked to an artful UI. They are also made out of cardboard.
It is hard to play them and not become a developer that builds increasingly holistically.8
- looking for a specific device in a single e-shop
- browse the listings of available SKUs
- find the one I want, buy it
And after I buy it, for some reason ad services think I need another one (or perhaps several other ones) from the same shop, as they keep showing me ads with the part I've purchased. And this goes on for weeks...
Talk about AI and clever advertising algorithms........4
Just read a really neat breakdown of approaches for auto-suggestion, covering n-grams, tries, and more, by a guy working at Etsy.
This is what I do with my days off apparently.
If you want to read it you can find it here:
First assignment of the algorithms, data structures and computability module Im doing for my degree.
Priority queues can all eat a bowl of dicks.
It’s just an insert method, I can insert a node into an empty queue, I can insert a new node at the start of the queue.
But trying to insert a node into a specific place in the queue is making my brain hurt.4
I am currently going to start data structures and algorithms in python...
suggest me a roadmap according to your experience2
any advice/suggestions to intensively brush up on modern C++ and multithreading for an interview that will likely be technical and cover bases like algorithms, data structures, etc?
I haven’t done c++ for awhile since a few courses in college - I did parallel programming and GPGPU on the side, but nothing on a professional level.
I’ve been mostly doing front web dev since I got out of school and C#, so I’ve been more on design/higher level of abstraction in dev and if I am asked things about pointers, memory allocations, etc I would probably draw a blank but I am motivated to no life it hard for the next week to catch up again.3
I am still learning programming and coding. Would some of you like to make a group and understand how algorithms work or how programming works as a whole?
Lets develop and grow together I guess. Interested people dm
insta : lucmonstar6662