Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API

From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "senior developers"
-
!rant
After over 20 years as a Software Engineer, Architect, and Manager, I want to pass along some unsolicited advice to junior developers either because I grew through it, or I've had to deal with developers who behaved poorly:
1) Your ego will hurt you FAR more than your junior coding skills. Nobody expects you to be the best early in your career, so don't act like you are.
2) Working independently is a must. It's okay to ask questions, but ask sparingly. Remember, mid and senior level guys need to focus just as much as you do, so before interrupting them, exhaust your resources (Google, Stack Overflow, books, etc..)
3) Working code != good code. You are an author. Write your code so that it can be read. Accept criticism that may seem trivial such as renaming a variable or method. If someone is suggesting it, it's because they didn't know what it did without further investigation.
4) Ask for peer reviews and LISTEN to the critique. Even after 20+ years, I send my code to more junior developers and often get good corrections sent back. (remember the ego thing from tip #1?) Even if they have no critiques for me, sometimes they will see a technique I used and learn from that. Peer reviews are win-win-win.
5) When in doubt, do NOT BS your way out. Refer to someone who knows, or offer to get back to them. Often times, persons other than engineers will take what you said as gospel. If that later turns out to be wrong, a bunch of people will have to get involved to clean up the expectations.
6) Slow down in order to speed up. Always start a task by thinking about the very high level use cases, then slowly work through your logic to achieve that. Rushing to complete, even for senior engineers, usually means less-than-ideal code that somebody will have to maintain.
7) Write documentation, always! Even if your company doesn't take documentation seriously, other engineers will remember how well documented your code is, and they will appreciate you for it/think of you next time that sweet job opens up.
8) Good code is important, but good impressions are better. I have code that is the most embarrassing crap ever still in production to this day. People don't think of me as "that shitty developer who wrote that ugly ass code that one time a decade ago," They think of me as "that developer who was fun to work with and busted his ass." Because of that, I've never been unemployed for more than a day. It's critical to have a good network and good references.
9) Don't shy away from the unknown. It's easy to hope somebody else picks up that task that you don't understand, but you wont learn it if they do. The daunting, unknown tasks are the most rewarding to complete (and trust me, other devs will notice.)
10) Learning is up to you. I can't tell you the number of engineers I passed on hiring because their answer to what they know about PHP7 was: "Nothing. I haven't learned it yet because my current company is still using PHP5." This is YOUR craft. It's not up to your employer to keep you relevant in the job market, it's up to YOU. You don't always need to be a pro at the latest and greatest, but at least read the changelog. Stay abreast of current technology, security threats, etc...
These are just a few quick tips from my experience. Others may chime in with theirs, and some may dispute mine. I wish you all fruitful careers!222 -
I hired a woman for senior quality assurance two weeks ago. Impressive resume, great interview, but I was met with some pseudo-sexist puzzled looks in the dev team.
Meeting today. Boss: "Why is the database cluster not working properly?"
Team devs: "We've tried diagnosing the problem, but we can't really find it. It keeps being under high load."
New QA: "It might have something to do with the way you developers write queries".
She pulls up a bunch of code examples with dozens of joins and orderings on unindexed columns, explains that you shouldn't call queries from within looping constructs, that it's smart to limit the data with constraints and aggregations, hints at where to actually place indexes, how not to drag the whole DB to the frontend and process it in VueJS, etc...
New QA: "I've already put the tasks for refactoring the queries in Asana"
I'm grinning, because finally... finally I'm not alone in my crusade anymore.
Boss: "Yeah but that's just that code quality nonsense Bittersweet always keeps nagging about. Why is the database not working? Can't we just add more thingies to the cluster? That would be easier than rewriting the code, right?"
Dev team: "Yes... yes. We could try a few more of these aws rds db.m4.10xlarge thingies. That will solve it."
QA looks pissed off, stands up: "No. These queries... they touch the database in so many places, and so violently, that it has to go to therapy. That's why it's down. It just can't take the abuse anymore. You could add more little brothers and sisters to the equation, but damn that would be cruel right? Not to mention that therapy isn't exactly cheap!"
Dev team looks annoyed at me. My boss looks even more annoyed at me. "You hired this one?"
I keep grinning, and I nod.
"I might have offered her a permanent contract"45 -
Yesterday: Senior dev messages out a screenshot of someone using an extension method I wrote (he didn’t know I wrote it)..
SeniorDev: “OMG…that has to be the stupidest thing I ever saw.”
Me: “Stupid? Why?”
SeniorDev: “Why are they having to check the value from the database to see if it’s DBNull and if it is, return null. The database value is already null. So stupid.”
Me: “DBNull is not null, it has a value. When you call the .ToString, it returns an empty string.”
SeniorDev: ”No it doesn’t, it returns null.”
<oh no he didn’t….the smack down begins>
Me: “Really? Are you sure?”
SeniorDev: “Yes! And if the developer bothered to write any unit tests, he would have known.”
Me: “Unit tests? Why do you assume there aren’t any unit tests? Did you look?”
<at this moment, couple other devs take off their head phones and turn around>
SeniorDev:”Well…uh…I just assumed there aren’t because this is an obvious use case. If there was a test, it would have failed.”
Me: “Well, let’s take a look..”
<open up the test project…navigate to the specific use case>
Me: “Yep, there it is. DBNull.Value.ToString does not return a Null value.”
SeniorDev: “Huh? Must be a new feature of C#. Anyway, if the developers wrote their code correctly, they wouldn’t have to use those extension methods. It’s a mess.”
<trying really hard not drop the F-Bomb or two>
Me: “Couple of years ago the DBAs changed the data access standard so any nullable values would always default to null. So no empty strings, zeros, negative values to indicate a non-value. Downside was now the developers couldn’t assume the value returned the expected data type. What they ended up writing was a lot of code to check the value if it was DBNull. Lots of variations of ‘if …’ , ternary operators, some creative lamda expressions, which led to unexpected behavior in the user interface. Developers blamed the DBAs, DBAs blamed the developers. Remember, Tom and DBA-Sam almost got into a fist fight over it.”
SeniorDev: “Oh…yea…but that’s a management problem, not a programming problem.”
Me: “Probably, but since the developers starting using the extension methods, bug tickets related to mis-matched data has nearly disappeared. When was the last time you saw DBA-Sam complain about the developers?”
SeniorDev: “I guess not for a while, but it’s still no excuse.”
Me: “Excuse? Excuse for what?”
<couple of awkward seconds of silence>
SeniorDev: “Hey, did you guys see the video of the guy punching the kangaroo? It’s hilarious…here, check this out.. ”
Pin shoulders the mat…1 2 3….I win.6 -
As a developer, sometimes you hammer away on some useless solo side project for a few weeks. Maybe a small game, a web interface for your home-built storage server, or an app to turn your living room lights on an off.
I often see these posts and graphs here about motivation, about a desire to conceive perfection. You want to create a self-hosted Spotify clone "but better", or you set out to make the best todo app for iOS ever written.
These rants and memes often highlight how you start with this incredible drive, how your code is perfectly clean when you begin. Then it all oscillates between states of panic and surprise, sweat, tears and euphoria, an end in a disillusioned stare at the tangled mess you created, to gather dust forever in some private repository.
Writing a physics engine from scratch was harder than you expected. You needed a lot of ugly code to get your admin panel working in Safari. Some other shiny idea came along, and you decided to bite, even though you feel a burning guilt about the ever growing pile of unfinished failures.
All I want to say is:
No time was lost.
This is how senior developers are born. You strengthen your brain, the calluses on your mind provide you with perseverance to solve problems. Even if (no, *especially* if) you gave up on your project.
Eventually, giving up is good, it's a sign of wisdom an flexibility to focus on the broader domain again.
One of the things I love about failures is how varied they tend to be, how they force you to start seeing overarching patterns.
You don't notice the things you take back from your failures, they slip back sticking to you, undetected.
You get intuitions for strengths and weaknesses in patterns. Whenever you're matching two sparse ordered indexed lists, there's this corner of your brain lighting up on how to do it efficiently. You realize it's not the ORMs which suck, it's the fundamental object-relational impedance mismatch existing in all languages which causes problems, and you feel your fingers tingling whenever you encounter its effects in the future, ready to dive in ever so slightly deeper.
You notice you can suddenly solve completely abstract data problems using the pathfinding logic from your failed game. You realize you can use vector calculations from your physics engine to compare similarities in psychological behavior. You never understood trigonometry in high school, but while building a a deficient robotic Arduino abomination it suddenly started making sense.
You're building intuitions, continuously. These intuitions are grooves which become deeper each time you encounter fundamental patterns. The more variation in environments and topics you expose yourself to, the more permanent these associations become.
Failure is inconsequential, failure even deserves respect, failure builds intuition about patterns. Every single epiphany about similarity in patterns is an incredible victory.
Please, for the love of code...
Start and fail as many projects as you can.30 -
So apparently my boss knows the "new senior dev", which I will call 'B'.
Backstory:
Program which I worked on for a year, my baby, is doing fine. Suddenly B decides to update it to "standardize it", against my suggestions/protests. Fastfoward to the following morning, I get to work and there's a bunch of emails from B waiting for me. I'm like "Well there's a meeting in an hour, so no point in answering all of these". 30 minutes go by and then boss shows up in my team's area. Asking for me.
(I didn't know this at the time, but apparently boss knows B. And thinks that B is this amazing programmer and super nice.)
According to boss, B has been trying to contact me all morning about my program failing.
It is at this moment that my mentor stands up to defend me. She basically tells our boss that B is a piece of shit. And I'm just loving it, ++ to mentor for bring awesome.12 -
You know what?
Young cocky React devs can suck my old fuckin LAMP and Objective-C balls.
Got a new freelance job and got brought in to triage a React Native iOS/Android app. Lead dev's first comment to me is: "Bro, have you ever used React Native".
To which I had to reply to save my honor publicly, "No, but I have like 8 years with Objective-C and 3 years with Swift, and 3 years with Node, so I maybe I'll still be able help. Sometimes it just helps to have a fresh set of eyes."
"Well, nobody but me can work on this code."
And that, as it turned out was almost true.
After going back and forth with our PM and this dev I finally get his code base.
"Just run "npm install" he says".
Like no fuckin shit junior... lets see if that will actually work.
Node 14... nope whole project dies.
Node 12 LTS... nope whole project dies.
Install all of react native globally because fuck it, try again... still dies.
Node 10 LTS... project installs but still won't run or build complaining about some conflict with React Native libraries and Cocoa pods.
Go back to my PM... "Um, this project won't work on any version of Node newer than about 5 years old... and even if it did it still won't build, and even if it would build it still runs like shit. And even if we fix all of that Apple might still tell us to fuck off because it's React Native.
Spend like a week in npm and node hell just trying to fucking hand install enough dependencies to unfuck this turds project.
All the while the original dev is still trying TO FIX HIS OWN FUCKING CODE while also being a cocky ass the entire time. Now, I can appreciate a cocky dev... I was horrendously cocky in my younger days and have only gotten marginally better with age. But if you're gonna be cocky, you also have to be good at it. And this guy was not.
Lo, we're not done. OG Dev comes down with "Corona Virus"... I put this in quotes because the dude ends up drawing out his "virus" for over 4 months before finally putting us in touch with "another dev team he sometimes uses".
Next, me and my PM get on a MS Teams call with this Indian house. No problems there, I've worked with the Indians before... but... these are guys are not good. They're talking about how they've already built the iOS build... but then I ask them what they did to sort out the ReactNative/Cocoa Pods conflict and they have no idea what I'm talking about.
Why?
Well, one of these suckers sends a link to some repo and I find out why. When he sends the link it exposes his email...
This Indian dude's emails was our-devs-name@gmail.com...
We'd been played.
Company sued the shit out of the OG dev and the Indian company he was selling off his work to.
I rewrote the app in Swift.
So, lets review... the React dev fucked up his own project so bad even he couldn't fix it... had to get a team of Indians to help who also couldn't fix it... was still a dickhead to me when I couldn't fix it... and in the end it was all so broken we had to just do a rewrite.
None of you get npm. None of you get React. None of you get that doing the web the way Mark Zucherberg does it just makes you a choad locked into that ecosystem. None of you can fix your own damn projects when one of the 6,000 dependency developers pushes breaking changes. None of you ever even bother with "npm audit fix" because if security was a concern you'd be using a server side language for fucking server side programming like a grown up.
So, next time a senior dev with 20 years exp. gets brought in to help triage a project that you yourself fucked up... Remember that the new thing you know and think makes you cool? It's not new and it's not cool. It's just JavaScript on the server so you script kiddies never have to learn anything but JavaScript... which makes you inarguably worse programmers.
And, MF, I was literally writing javascript while you were sucking your mommas titties so just chill... this shit ain't new and I've got a dozen of my own Node daemons running right now... difference is?
Mine are still working.34 -
Companies: We can’t find any senior developers to hire.
Also companies: We pay seniors like juniors.9 -
I believe this is why companies look for Junior Developers who actually know enough to be a mid or senior developer.
One day, a company that doesn't have the technical chops to know the difference between python and ruby hire a developer who is still in school. That developer doesn't know what he's worth, so the company gets him for pretty cheap. He does amazing things, takes last minute requests, learns some along the way, but eventually leaves because he just got contacted by a recruiter telling him how much he's really worth. He leaves, but the company needs to fill his spot. The company asks the former rockstar all the technologies he used to accomplish his job and throw that into a job description. The company could only really afford the junior so they keep all the stuff about being a junior, but because they need to maintain all the hodge podge stuff the previous developer put in, they need someone with experience enough to jump in.6 -
I AM SO FUCKING TIRED OF BUSINESS MOTHERFUCKERS USING TECHNICAL FUCKING BUZZWORDS LIKE THEY KNOW SHIT ABOUT TECH! THEY TRY TO BE FUCKING SMARTASSES AND ARGUE WITH DEVELOPERS LIKE GOD KNOWS WHY THIS FUCKING DOUCHE IS NOT THROWN IN /dev/null YET!
Ugh. He try to sound smart and argued with a unity game developer why the dev is not using "react" and "redux" in his game, purely because "since its the hype in 2016"... I was like really nigga?? FOR FUCKS SAKE Do some research before you say! Then he argued with a senior full-stack web developer on why they're using ES6 and not ES7, purely because he heard that ES7 is newer. When we try to explain we're not using decorator syntaxes since we use pure functions in our codebase, or how we haven't installed any ES7 babel plugins to transpile our code, he kept saying ES7 is newer and cooler and we must use it somehow... More to rant but i am fucking tired right now...14 -
Lads, I will be real with you: some of you show absolute contempt to the actual academic study of the field.
In a previous rant from another ranter it was thrown up and about the question for finding a binary search implementation.
Asking a senior in the field of software engineering and computer science such question should be a simple answer, specifically depending on the type of job application in question. Specially if you are applying as a SENIOR.
I am tired of this strange self-learner mentality that those that have a degree or a deep grasp of these fundamental concepts are somewhat beneath you because you learned to push out a website using the New Boston tutorials on youtube. FOR every field THAT MATTERS a license or degree is hold in high regards.
"Oh I didn't go to school, shit is for suckers, but I learned how to chop people up and kinda fix it from some tutorials on youtube" <---- try that for a medical position.
"Nah it's cool, I can fix your breaks, learned how to do it by reading blogs on the internet" <--- maintenance shop
"Sure can write the controller processing code for that boing plane! Just got done with a low level tutorial on some websites! what can go wrong!"
(The same goes for military devices which in the past have actually killed mfkers in the U.S)
Just recently a series of people were sent to jail because of a bug in software. Industries NEED to make sure a mfker has aaaall of the bells and whistles needed for running and creating software.
During my masters degree, it fucking FASCINATED me how many mfkers were absolutely completely NEW to the concept of testing code, some of them with years in the field.
And I know what you are thinking "fuck you, I am fucking awesome" <--- I AM SURE YOU BLOODY WELL ARE but we live in a planet with billions of people and millions of them have fallen through the cracks into software related positions as well as complete degrees, the degree at LEAST has a SPECTACULAR barrier of entry during that intro to Algos and DS that a lot of bitches fail.
NOTE: NOT knowing the ABSTRACTIONS over the tools that we use WILL eventually bite you in the ASS because you do not fucking KNOW how these are implemented internally.
Why do you think compiler designers, kernel designers and embedded developers make the BANK they made? Because they don't know memory efficient ways of deploying a product with minimal overhead without proper data structures and algorithmic thinking? NOT EVERYTHING IS SHITTY WEB DEVELOPMENT
SO, if a mfker talks shit about a so called SENIOR for not knowing that the first mamase mamasa bloody simple as shit algorithm THROWN at you in the first 10 pages of an algo and ds book, then y'all should be offended at the mkfer saying that he is a SENIOR, because these SENIORS are the same mfkers that try to at one point in time teach other people.
These SENIORS are the same mfkers that left me a FUCKING HORRIBLE AND USELESS MESS OF SPAGHETTI CODE
Specially to most PHP developers (my main area) y'all would have been well motherfucking served in learning how not to forLoop the fuck out of tables consisting of over 50k interconnected records, WHAT THE FUCK
"LeaRniNG tHiS iS noT neeDed!!" yes IT fucking IS
being able to code a binary search (in that example) from scratch lets me know fucking EXACTLY how well your thought process is when facing a hard challenge, knowing the basemotherfucking case of a LinkedList will damn well make you understand WHAT is going on with your abstractions as to not fucking violate memory constraints, this-shit-is-important.
So, will your royal majesties at least for the sake of completeness look into a couple of very well made youtube or book tutorials concerning the topic?
You can code an entire website, fine as shit, you will get tested by my ass in terms of security and best practices, run these questions now, and it very motherfucking well be as efficient as I think it should be(I HIRE, NOT YOU, or your fucking blog posts concerning how much MY degree was not needed, oh and btw, MY degree is what made sure I was able to make SUCH decissions)
This will make a loooooooot of mfkers salty, don't worry, I will still accept you as an interview candidate, but if you think you are good enough without a degree, or better than me (has happened, told that to my face by a candidate) then get fucking ready to receive a question concerning: BASIC FUCKING COMPUTER SCIENCE TOPICS
* gays away into the night53 -
My first rant here, don't know how to start, but fuck these self proclaimed senior developers who can't even get their concepts right about basic things and don't believe in reading docs.
Fuck you for asking if sequelize has a method to return details of the logged in user of your app, it's a fucking ORM you dumbfuck. You are a "full stack" developer for fuck's sake.
Fuck you for making those "minor changes" which breaks build and then blame it on any random plugin or lib used, or my commits.
Fuck you for expecting me to review your code on Sundays because you couldn't finish it on time.
I don't like java, at all, but even I get that without it we wouldn't be where we are right now and can't reach where we aspire to reach. But you can't keep chanting "Java is dead, Java is dead" every chance you get. No, it's NOT dead. Nor is going to, anytime soon.
And for god's sake, please stop choosing one library/plugin over another just on the basis of stars on repo, it's not the only (or valid) criteria. Look if you actually even need it. Think.
And please learn how to google first, and also stop using "the" before every the noun, the adjective and the verb. It's the fucking the annoying to read.
And yes, there are different linting presets out there, and just because a piece of code in a plugin/library/boilerplate is not following your specific, and may I say horrible standard, doesn't mean it's a "bad code". It's written by people who have created/worked-on these libraries as side projects on which your entire career is based upon.
And I haven't even talked about the code you write or your domain knowledge or the way you treat other people. So get off your high horse and behave like a developer, a real one.8 -
To all young freelancers in low-income countries: I want to share my experience, of 6 years working for a piss-poor country, and 6 years working in freelance, and then emigrating. Here's what you should watch out for, and what to expect:
My first salary was barely 1.5$ per hour. I lived in a piss-poor country that taught me a lot (like why it's piss-poor).
The main thing to note when you're a developer in such a country, is that you're being fucked. Your employer might scream at you and tell you how bad you are, while barely paying you. That is you ... being ... fucked. Gain some confidence with the help of friends and family, and a great effort from yourself, look at what freelance gigs you can find, and ditch anything related to jobs in your country.
Being a somewhat able developer, but with modest experience, I started my freelance gigs for 5$ per hour. Because I was lazy, and freelance gigs weren't exactly being thrown at me, I was making 100$ per week, AFTER the companies I worked for appreciated what I did and offered themselves to up my pay to 12$ per hour. Yep. I was lazy. You will likely get lazy in freelance too, so be prepared for this.
My luck changed when one of my clients became a full-time employer, at 15$ per hour, with a well organized team where I actually worked for 40 hours per week (I had already amassed 8 years of experience...). For people in first world countries that will seem laughable, but in my country I was king of the hill, getting paid more than government CEOs that ended up in the news as the "most well paid".
That was the top of the pyramid for international indie freelance, as I would later find out.
I didn't do stuff that was very difficult. In fact, I felt like my abilities were rotting while I worked there. I had to change something. So I started looking for better offers. I contacted many companies that were looking for a senior developer, and the interviews went well, and all was fine, except for my salary demands. I was asking for 25$ per hour. Nobody was willing to pay more than 15$ per hour. That's because of my competition - tons of developers in cheap-to-live countries that had the same, or more to offer, for the same rates. Globalization.
So I moved to Germany. As soon as I was legally able to work, I was hunted down by everybody. I was told that it takes a month to pass the whole hiring process in Germany. My experience demonstrated that 2-5 days is enough to get a signed contract with "Please start ASAP".
There is freelance in Germany as well. And in the US. And everywhere else. A "special" kind of freelance, where you have to reside locally. The rates that this freelance goes for is much, much higher than international freelance. I'd say that 100€ per hour is ok-ish. Some people (newbies, or foreigners who don't speak the language well) get less, around 60 or so. Smart experienced locals get around 150-200 or even more.
It's all there. Companies want good developers to solve their business problems with IT solutions, and they'll beg you to take their money if you can deliver that.
So code!
Learn!
Accummulate experience!
Screw the scumbags that screw you for 1-2$ per hour!
Anyone able to write something more than "Hello World!" deserves more.
Do the climb! There's literally room for everybody up there! There is so much to do, that I feel like there will never be too many developers.
Thank you for bearing with my long story. I hope it will help you make it shorter and more pleasant for you.11 -
It's disheartening to see a senior member of my team shitting on the code of less mature developers. Don't just say "this is unacceptable", elaborate, teach them. How are they going to action anything from that feedback?
Take the time to respond to their questions when they ask for clarification on what you're saying. Don't berate them.
Honestly some developers need to learn a thing or two about code etiquette.
There's no room for good cop / bad cop behaviour.10 -
We've got a team of around 20 developers and the most junior of them all is a interesting specimen.
The kind of person who thinks they a 'expert' in anything and everything and is constantly trying to school our senior developers who have 20+ years experience behind them.
The sort of person that spends 15 seconds googling something he has never heard of before, but now that he has skimmed 1 page on Google would classify himself as a 'expert' in said topic.
He comes into my office yesterday and proclaims that it has been decided by himself that he no longer wants to be a developer anymore and wants to do Ops/Infrastructure, then starts rambling on about how he is a Kubernetes expert.
I asked what experience he had with Kubernetes and his response was "I watched a webinar they did last night" to which I asked if he had ever actually used anything to do with Kubernetes in his life.
"No, but I'll watch a few YouTube videos and will then be more than qualified" he says
Followed by him telling me that we'll be moving all of our current Docker Swarm clusters into Kubernetes.
This was news to me (I'm head of infrastructure and operations)
I needed a good giggle, so I asked why we would get rid of our exisiting Docker infrastructure that's got a 100% uptime over the past 2 years and has worked without failure. It's truely been a dream.
He says "Because it's shiny and cool and better"
The nest afternoon he comes to me and says "When I move everything into Kubernetes I am going to convert everything into micro services"
He says that he watched a YouTube video the night before on microservices and has decided that it's what we need to use for a particular project.
(It's a simple php website that gets 100 hits per day)
Hopefully his boss will notice that he is producing no output soon. Don't want to tell the manager that the guy he hired delivers no work and lives in a fantasy land.
"your not touching the infrastructure. Ever"15 -
We called it "Project Hindenburg".
A huge planning and logistics app with hundreds of screens and dozens of interwoven subfunctions, suddenly needed to be able to support multiple time zones. Our project was to retrofit every area that touched on dates or times, to allow the user to specify, and work in, any time zone.
At this point in the story I can tell whether you have had to work with time zones in code. People who haven't are butting in with something that begins, "that should be fairly simple, you just need to..." followed by some irrelevant noise that betrays their ignorance.
People who have worked with time zones are nodding in shared pain, like fellow attendees of a survivors meeting.
You see, programmers tend to think of time zones as arithmetic; in reality, they are confusing, ambiguous, chaotic, and individual. You can't translate everything into a central time zone (eg UTC) because you lose the user's intent. For example, if you schedule a meeting for 3pm and then move it to the next day, you want it at 3pm even if the clocks have changed.
Project Hindenburg ended up using the entire development staff of the company for well over a year. It smashed our release projections to rubble, made an already tangled code base completely unmaintainable, introduced mind-bending edge case bugs that reduced staff across the company to tears (literally), and led to most of the mid-level and senior developers eventually quitting (including me).
I am @fuckfuckityfuck, and that was the story of Project Hindenburg.11 -
Wow... this is the perfect week for this topic.
Thursday, is the most fucked off I’ve ever been at work.
I’ll preface this story by saying that I won’t name names in the public domain to avoid anyone having something to use against me in court. But, I’m all for the freedom of information so please DM if you want to know who I’m talking about.
Yesterday I handed in my resignation, to the company that looked after me for my first 5 years out of university.
Thursday was my breaking point but to understand why I resigned you need a little back story.
I’m a developer for a corporate in a team of 10 or so.
The company that I work for is systemically incompetent and have shown me this without fail over the last 6 months.
For the last year we’ve had a brilliant contracted, AWS Certified developer who writes clean as hell hybrid mobile apps in Ion3, node, couch and a tonne of other up to the minute technologies. Shout out to Morpheus you legend, I know you’re here.
At its core my job as a developer is to develop and get a product into the end users hands.
Morpheus was taking some shit, and coming back to his desk angry as fuck over the last few months... as one of the more experienced devs and someone who gives a fuck I asked him what was up.
He told me, company want their mobile app that he’s developed on internal infrastructure... and that that wasn’t going to work.
Que a week of me validating his opinion, looking through his work and bringing myself up to speed.
I came to the conclusion that he’d done exactly what he was asked to, brilliant Work, clean code, great consideration to performance and UX in his design. He did really well. Crucially, the infrastructure proposed was self-contradicting, it wouldn’t work and if they tried to fudge it in it would barely fucking run.
So I told everyone I had the same opinion as him.
4 months of fucking arguing with internal PMs, managers and the project team go by... me and morpheus are told we’re not on the project.
The breaking point for me came last Wednesday, given no knowledge of the tech, some project fannies said Morpheus should be removed and his contract terminated.
I was up in fucking arms. He’d done everything really well, to see a fellow developer take shit for doing his job better than anyone else in [company] could was soul destroying.
That was the straw on the camels back. We don’t come to work to take shit for doing a good job. We don’t allow our superiors to give people shit in our team when they’re doing nothing but a good job. And you know what: the opinion of the person that knows what they’re talking about is worth 10 times that of the fools who don’t.
My manager told me to hold off, the person supposed to be supporting us told me to stand down. I told him I was going to get the app to the business lead because he fucking loves it and can tell us if there’s anything to change whilst architecture sorts out their outdated fucking ideas.
Stand down James. Do nothing. Don’t do your job. Don’t back Morpheus with his skills and abilities well beyond any of ours. Do nothing.
That was the deciding point for me, I said if Morpheus goes... I go... but then they continued their nonsense, so I’m going anyway.
I made the decision Thursday, and Friday had recruiters chomping at the bit to put the proper “senior” back in my title, and pay me what I’m worth.
The other issues that caused me to see this company in it’s true form:
- I raised a key security issue, documented it, and passed it over to the security team.
- they understood, and told the business users “we cannot use ArcGIS’ mobile apps, they don’t even pretend to be secure”
- the business users are still using the apps going into the GDPR because they don’t understand the ramifications of the decisions they’re making.
I noticed recently that [company] is completely unable to finish a project to time or budget... and that it’s always the developers put to blame.
I also noticed that middle management is in a constant state of flux with reorganisations because in truth the upper managers know they need to sack them.
For me though, it was that developers in [company], the people that know what they’re talking about; are never listened to.
Fuck being resigned to doing a shit job.
Fuck this company. On to one that can do it right.
Morpheus you beautiful bastard I know you’ll be off soon too but I also feel I’ve made a friend for life. “Private cloud” my arse.
Since making the decision Thursday I feel a lot more free, I have open job offers at places that do this well. I have a position of power in the company to demand what I need and get it. And I have the CEO and CTO’s ears perking up because their department is absolutely shocking.
Freedom is a wonderful feeling.13 -
So I have this best friend who is almost 10 years younger than me. (I'm turning 40 this month). He's a full stack web dev, nodejs-god, react-maniac, you name it. He fucking LIVES to code the most amazing shit I have seen to date.
I, on the other hand, am that old, little overweight PHP coder webdev with a shitload of experience in that field (17th year now), also with linux webserver administration and all the JavaScript knowledge I need in m job.
Sitting next to him and doing some fun coding sessions always makes me feel like I am that "slow, fat kid in class"... while he is the coding master.
Sitting at work (marketing agency) where I started as the new webdev 10 months ago, I still feel like the coding guru because even the web 'developers' don't know jack shit yet (coz they never had to).
It's fine, they are learning and want to learn.
All I wanna say that even though one might be seen as a senior dev by some, he might sometimes feel like a junior dev when he's around others.2 -
So yesterday one of the "senior" python developers woke me up at 1 am (we work in different time zones, and he knows how many hours I'm ahead) asking why isn't his code working. The error message was:
[ERROR] Runtime.ImportModuleError: Unable to import module 'app': xxx is not installed, run `pip install xxx` Traceback (most recent call last)
I am at lose of words and patience. Not only idiots who can't google simple stuff are seniors, additionaly we went from "DevOps is a culture" straight to "hey I'm developer in my silo, if it doesn't work on my machine it's DevOps problem, plz fix".12 -
Wtf how am I seeing job postings for senior blockchain developers with 8+ years of experience? Aint this shit like super new??12
-
Following on from: https://devrant.com/rants/1345037/...
I sent a polite but very frank email to the manager telling him I don't agree and think its extremely unfair to overlook the breath and scale of work we have done in the past few months. Instead to criticise us for this.
He didn't reply, or really speak to us for a week. Then suddenly one day the developers were all in a meeting room and he butted in to talk.
He first of all said he wanted to let things settle before talking to us, which gave me high hopes as I expected him to then say something like we miss understood, or he didn't realise etc.
... but no ... the next words out of his mouth were "I'm not apologising for anything, and I don't want to be told to piss off in an email".
A) Piss off = completely untrue and a massive exaggeration.
B) Go fuck yourself with a cactus.
C) See point B.
In that meeting we discussed the massive amount of meetings and work we have to do which was described as "just the job".
We were told we all have to be in until 5pm, but that we also don't. We need to be in the office more, but its fine if we can't be. And we need to cut down on WFH, but its ok to WFH ... so yeah everything is crystal clear.
I haven't written any code in 3 - 4 weeks. I'm now dealing with GDPR shit, and our internal processes to handle it (despite having no legal background). Have to fill out 140+ question surveys about each of our projects, which are the most vaguest things i've ever seen.
"Are you processing large scale data" - The fuck is large scale, oh wait heres a definition. "Large scale is determine by volume or percentage of population size" - How in the name of christ is that a definition? Fucking lawyers and their bullshit.
The next round of applications for research funding is coming around soon and were being told to work on proposals (which are huge and a lot of effort). While being told we need to define and improve on our KPI's for the year. While trying to find time to ... you know ... do ... work?
I'm just so fucking bored and pissed off with this place. I have to do the work of 6 people, nothing is ever good enough, devs have to do very non-dev tasks with little to no support. Bosses are just annoyed about everything, everyones in a bad mood and everything sucks.
A friend put me forward for another senior role in another company. Thought this would be my saving grace. They have a strict interview process with white-boarding (which I hate) and will likely ask about algorithms etc which I suck at. I'm so burnt out from this place I just can't find the motivation to go study up or prepare properly.
I just wanna write code, why is there so much bullshit in life11 -
All web developers should support up to IE9 without any problems.
Why? Because in Korea, it is normal.
Every person uses that damn Win7, which has either IE9 or IE10. Without IE support, no one will browse your webpage.
Now you would ask us, why don't you use other modern browsers?
We would then ask you, why would you install a new browser that is
1. Buggy
2. Heavy
3. Takes up ram
4. Has so many features
when you have an awesome minimalistic browser that is preinstalled, and works in all Windows? No thanks.
So, if you put a message saying you will soon drop support of IE, it means that you won't target Korea. Just after the support drop, there won't be traffic to your web site.
So what is the point of this rant?
1. We love IE. Lol
2. IE is lightweight, minimalistic, and the fastest browser in the world.
3. All websites should NOT drop support for IE.
4. We don't care whether web devs will have a hard time. We just think websites are built with Wix and Wordpress, and they work in IE, meaning, IE support is the number one priority.
5. If you ever start a business in Korea, and has a website, make sure to hire an senior Korean web dev who has worked with IE for a long time.
6. Here is the tl;dr
Hate us. Period.25 -
Yes, senior developers get stuck just as much as junior developers do, the difference is that they get stuck in places that junior developers can’t even access. That is partially because senior developers are expected to do so much more than just simple coding, they need to also grasp and untangle client requirements, communicate clearly and thoughtfully with the team, be some sort of guiding/mentoring/leading figure, make sweeping architectural decisions, and so on and so forth.
A junior developer is struggling with making relevant columns of a table a nice shade of purple. A senior developer is struggling with making sure that implementing new client requirements will not have a destructive impact on the current infrastructure, there will be no regressions elsewhere in the system, tries to pinpoint what prior assumptions the new stuff breaks (it inevitably does), and how to reconcile everything.4 -
My colleges and I were talking about salaries in our company. Our team as about 10 members. Many of us are receiving interesting offers from other companies, and we concluded that we were being underpaid.
In this life, unless you ask to, no boss will raise you, even if you put some extra effort and work the shit out of you, to bring that profit, new client or something else good to the company.
Nobody was interested in talking directly about that to our manager. Just a side note, our manager is an awesome senior developer and a very nice guy. It shouldn't be too hard to talk about this issue to him.
I waited until our annual performance and salary revision to talk about it. Everyday our team talks about this. Everyone is going crazy.
So I went straight to the point, during this meeting with our manager, and said that we needed to be raised. All of us, because other companies were offering much better salaries.
He said to me: "Take this paper, write down what value should every one receive, including myself."
I took this opportunity and put down the values, raising about 600€ for each one.
I looked at it and said: "This looks ok. I'll will ask your colleagues to do the same task. Wait here."
So he went and requested everyone to do the same thing, without explaining why.
Guess what happened? Some mother fuckers actually cut on others salaries, instead of raising everyone equally.
Anyway the manager said he would show that to the CEO, and maybe something would happen.
We were all raised in the values I said so, because the CEO want us to be among the companies that pay the most.
After the backstabbing, no one ever talked about that. Except for 3 good fellow developers, that thanked me for my initiative.11 -
From my work -as an IT consultant in one of the big 4- I can now show you my masterpiece
INSIGHTS FROM THE DAILY LIFE OF A FUNCTIONAL ANALIST IN A BIG 4 -I'M NOT A FUNCTIONAL ANALYST BUT THAT'S WHAT THEY DO-
- 10:30, enter the office. By contract you should be there at 9:00 but nobody gives a shit
- First task of the day: prepare the power point for the client. DURATION: 15 minutes to actually make the powerpoint, 45 minutes to search all the possible synonyms of RESILIENCE BIG DATA AGILE INTELLIGENT AUTOMATION MACHINE LEARNING SHIT PISS CUM, 1 hour to actually present the document.
- 12:30: Sniff the powder left by the chalks on the blackboards. Duration: 30 minutes, that's a lot of chalk you need to snort.
13:00, LUNCH TIME. You get back to work not one minute sooner than 15.00
- 15:00, conference with the HR. You need to carefully analyze the quantity and quality of the farts emitted in the office for 2 hours at least
- 17:00 conference call, a project you were assigned to half a day ago has a server down.
The client sent two managers, three senior Java developers, the CEO, 5 employees -they know logs and mails from the last 5 months line by line-, 4 lawyers and a beheading teacher from ISIS.
On your side there are 3 external ucraininans for the maintenance, successors of the 3 (already dead) developers who put the process in place 4 years ago according to God knows which specifications. They don't understand a word of what is being said.
Then there's the assistant of the assistant of a manager from another project that has nothing to do with this one, a feces officer, a sys admin who is going to watch porn for the whole conference call and won't listen a word, two interns to make up a number and look like you're prepared. Current objective: survive. Duration: 2 hours and a half.
- 19:30, snort some more chalk for half an hour, preparing for the mail in which you explain the associate partner how because of the aforementioned conference call we're going to lose a maintenance contract worth 20 grands per month (and a law proceeding worth a number of dollars you can't even read) and you have no idea how could this happen
- 20:00, timesheet! Compile the weekly report, write what you did and how long did it take for each task. You are allowed to compile 8 hours per day, you worked at least 11 but nobody gives a shit. Duration: 30 minutes
- 20:30, update your consultant! Training course, "tasting cum and presenting its organoleptic properties to a client". Bearing with your job: none at all. Duration: 90 minutes, then there's half an hour of evaluating test where you'll copy the answers from a sheet given to you by a colleague who left 6 months ago.
- 22:30, CHANCE CARD! You have a new mail from the HR: you asked for a refund for a 3$ sandwich, but the receipt isn't there and they realized it with a 9 months delay. You need to find that wicked piece of paper. DURATION: 30 minutes. The receipt most likely doesn't even exist anymore and will be taken directly from your next salary.
- 23:00 you receive a message on Teams. It's the intern. It's very late but you're online and have to answer. There's an exception on a process which have been running for 6 years with no problems and nobody ever touches. The intern doesn't know what to do, but you wrote the specifications for the thing, 6 years ago, and everything MUST run tonight. You are not a technician and have no fucking clue about anyhing at all. 30 minutes to make sure it's something on our side and not on the client side, and in all that the intern is as useful as a confetto to wipe your ass. Once you're sure it's something on our side you need to search for the senior dev who received the maintenance of the project, call him and solve the problem.
It turns out a file in a shared folder nobody ever touches was unreachable 'cause one of your libraries left it open during the last run and Excel shown a warning modal while opening it; your project didn't like this last thing one bit. It takes 90 minutes to find the root of the problem, you solve it by rebooting one of your machines. It's 01:00.
You shower, watch yourself on the mirror and search for the line where your forehead ends and your hair starts. It got a little bit back from yesterday; the change can't be seen with the naked eye but you know it's there.
You cry yourself to sleep. Tomorrow is another day, but it's going to be exactly like today.8 -
I recently joined this big MNC after shutting down my own startup. I was trying to automate their build process properly. They were currently using grunt and I favor gulp, so I offered to replace the build process with gulp and manage it properly.
I was almost done with it in development environment and QA was being done for production.
In the meantime I was trying to fix some random bug in a chrome extension backend. I pushed some minor changes to production which was not going to affect the main site. That was in the afternoon.
This Friday my senior rushed to me. It was like he ran six floors to reach me. He asked, did you push the new build system to production, I refused. He then went to the computer nearby and opened the code.
It was Friday and I was about to leave. But being a good developer, I asked what's the problem. He told me that one complete module is down and the developers responsible for them left for the day already and are unreachable.
I worked on that module multiple times last month, so I offered my help. He agreed and we get to work.
The problem was in the Angular front end. So we immediately knew that the build process is screwed. I accidentally kept the gulp process open for anyone, so I immediately rebuilt using grunt and deployed again, but to no success.
Then I carefully analyzed all the commits to the module to find out that I was the one who pushed the change last. That was the chrome extention. I quickly reverted the changes and deployed and the module was live again. The senior asked, how did you do that? I told the truth.
He was surprised that how come that change affect the complete site too. We identified it after an hour. It was the grunt task which includes all the files from that particular module, including chrome extension in the build process.
He mailed the QA team to put Gulp in increased priority and approved the more structural changes, including more scrutiny before deployment and backup builds.
The module was down for more than 5 hours and we got to know only after the client used it for their own process. I was supposed to be fired for this. But instead everyone appreciated my efforts to fix things.
I guess I am in a good company 😉4 -
A couple weeks ago, my coworkers built a site where 90% of pages consisted of all images and uncompressed images at that. I'm talking even the text was images. At the time I told my boss that it should be done with css and this would later come to bite them in the ass with page load speed and seo. He ignored me and said it was fine. Well today my boss assigned me with going back and basically removing images with things that can be done with css because load speed was terrible and seo wasnt too hot. Maybe if he listened to me from the get go, he wouldn't have to assign me this unnecessary work and I can focus on cleaning up all the other piss poor excuse of websites they have. Seriously tired of feeling like I, the junior dev is doing the teaching to these "senior developers" who get paid like twice as much as I do when I'm the one who is always doing the cleanups /optimization and guiding them on all their problems. Is it Friday yet?-_-4
-
Senior management has decided developers have to spent 25% of their time / month on business related self development and improvement.
😁😁😁😁😆😆😆😆5 -
Story Time:
When I first started working where I currently am, the manager at the time decided to send us off to a conference about one of the products our institution was purchasing at the time. She also thought that it would be a good way for me, the new guy, to bond with the rest of the staff.
During the presentations we found out that the people surrounding us were not exactly developers because of a couple of things:
1. Some examples were done with php and javascript for adding functionality to said product. The product gave you the opportunity to script on top of it (think of some sort of CMS, but it does not use PHP as its backend language) EVERYONE from the "class" in this particular workshop said they were developers. But at the sight of php in a group of 80 people or so, only about 7 recognized it, including myself and my team.
2. When they showed an example with Javascript, in particular jquery, one of the dudes in the workshop said (with extreme senior level confidence might I add) "yeah I never liked Javascript because you really can't connect it to any database in a website" <--- my face went 0.o and one of the actual developers doing the presentation did a Jim from the Office and looked at some out of screen camera.
3. During a conf talk, one PHD dude showed an example in the template language the CMS used (an obscure Java based template language)in which he was proudly calling out a technique he used to include one snippet of code into another one.....at that time, one of my coworkers squinted his eyes in disbelief, got close to me and said "is this man telling everyone in here that he discovered how to include a file? like, as a new thing?" me: "lol yes", him: "this is a waste of time, do the docs for this thing show how to do it or is he doing some sort of strange maneuver for something the platform does not support?" me: "let me check....nope, it is included, for some reason he made a function that takes the...name of the file he wants to include and passes it over to that call inside of the body....which as per the docs it is the include function...." him: ".....fuck, what a waste of time and money, fuck it lets spend a couple of more minutes here and then go get a drink or something"
That last part was my favorite really, the man speaking was not just any phd holder, but a comp sci phd holder. To this day my dude would walk into my office and say shit like "I DISCOVERED HOW TO INCLUDE A FILE WITH PHP!"14 -
Manager: How to make successful product?
CEO: Just Add words like Machine learning and Ai
Newbie developers: Takes 10$ udemy course without statistical and probabilistic knowledge, after 1 week believes himself to have "Expertise in ML,AI and DL"
HR: Hires the newbie
*Senior Developer Quits*6 -
Wanted to live outside the US. Was dating a Korean girl who moved back to Korea and was like why the hell not, let's go.
Worked at an American company that had a Korean office, so i thought it'd be easy mode. Took a working vacation to that office and interviewed. Brain froze on basic algorithms stuff - binary search. Failed to understand a logic question. But oddly enough, did well communicating with Korean developers with limited English knowledge.
Director talks to me at the end of the day, tells me they're looking for someone more senior. I bombed it, not mad.
...
Then he tells me he has a friend at one of the largest companies in Korea and that he'll be there to talk to me in two hours.
Dafuq
Chat with the dude. Supposedly, the larger company culture blows, but he has a little haven of badass developers and is known throughout the company for being an effective team builder. We talk for 90 minutes, and he days he'll hire me. Take a short online test to make sure I'm not a derp. Four months later, living in Korea and working, alas, sans girlfriend.
Been a year now. Ends up the company culture eventually crushed my boss. He was moved off the project, and then the project was scrapped. Yet they're starting a new project with the same group plus more because logic.
Today accepted an offer at a smaller company for a salary equal to my current salary plus bonus. Also, vidya gaems yayy.
I have got to have the silliest luck5 -
I hate clients that tell the developers what to use without discussion.
We're paid to solve problems.
Dictatorship on tools and methodologies are okay with junior devs or interns, but when you have senior devs, it has to be a democracy.
Having limitations like browser versions or server capabilities are fine, but declaring which slider to use, you MUST use jquery, or all that jazz just grinds my gears.5 -
We have a developer that is known for rejecting PR during code reviews.
He sent me a message and asked me to come to his desk to discuss my PR.
He mentioned that he didn't like my solution and suggested to rewrite the code together.
So far so good, he is a senior developer and I'm sure I'll pick something from the pair programming session. He went with his approach and faced some issues that led us to my solution after nearly 2 hours.
I'm not angry because this scenario happened at least 3 times but how do you guys deal with senior developers that are stubborn?7 -
As a senior developer, I introduced a bug in the hiring system at the company I worked at and it took HR nearly 2 years to fix it.
Bug: Every candidate I interview on Wednesday between 12:30 PM and 4:15 PM gets selected irrespective of performance.
Impact: 270 candidates got a job
1st Fix [1.5 years in]: Add multiple developers to conduct a single interview (still did not fix it completely after all I was a senior developer)
2nd Fix [2 years in]: Removed me from the hiring committee
3rd Fix [though was not needed but for HR's extra safety]: Started recording all interviews
It was a good time.3 -
This is going to be a rant, but personally, I'm pleased with the outcome of my life now.
I was part of a community for a few years and decided to help them out with my knowledge of programming Lua nearly 2 years ago since they lacked developers for the project itself.
Since it was sort of a custom language that they modified how Lua worked on it, it took me a bit to adapt, but within a few weeks, I was pretty fluent in this so-called custom language they had. Began working on some major updates, additions, removals, and just optimizing this code base. It was a pretty old code base and needed a good chunk of love.
A few months later, I've implemented loads of features, optimized the base whenever I could, and then things start taking a turn for the worse. We get new 'developers' who haven't ever coded the language, and worse they couldn't afford to provide them development servers thus they ended up breaking my servers. I helped them and they learned, they were decent, but now the Seniors and CEO's of the project began to take a toll on me.
I was told that this community had a reputation of driving out developers, ruining their reputations, and that is what started happening. I started getting questioned if I was loyal to helping them, that I've become lazy, even though they were explained I've had mental health issues for a few years and have been hospitalized multiple times.
These sort of attacks kept happening for months, and then they finally pushed my buttons, where I was talking to another Senior of how we should redo the base since it's just so massive and a few tiny updates to the base take a few days to implement across the entire code. What instead happened was that I went to sleep, and this Senior told the CEO I was going to steal the code base and go sell it...
I woke up to messages of how the CEO is all pissed off, and that this what the Senior said. At this point, I started responding with, fuck it. I was so sick and fucking tired of their bullshit. I was the only fucking competent developer, and I did more work in the few months I was there then some people did in 2 or 3 years.
A few hours later I decided to go chat with the CEO and explained what was truly brought up, and he just brushed it off like I was lying. At that point, I lost it. I told him why the code base was horrible since he hired stupid ass developers. He didn't know how to code. People wanted certain items, and he wouldn't be able to add them for fucking months and players sit there making fun of it. Some people state the only differences they see within the code is the code I've done. Basically, he was an incompetent fuck that said he knew what he was doing, and had all these big plans for the future yet couldn't listen to the only competent developer and fucking claimed bullshit.
Now a few months have gone by, I'm looking at their community and it's basically dead with no proper updates except for copy and paste updates claiming to be custom coded. While I'm working on my real life businesses (Which are currently being a headache, but within the year should resolve its issues), starting University for my Computer Science degree here soon, and even considering building my own game here.
Basically, karma is a bitch and that's why when you get loyal people in your life, keep them. (Writing this at 3 am after a few drinks, hopefully, it made sense, I think it does.)
Anyways, goodnight everyone.5 -
Recently been made senior dev at my company... I never really knew the struggle of finding decent developers who haven't massively exaggerated their knowledge on their CV's 😑6
-
I am tired of toxic politics at work.
Signs of a toxic workplace:
* (good) decisions are discouraged rather than encouraged.
Someone wants to introduce a great optimization and guess what the reply is (often from someone IT-ignorant): wait a minute, you can't do that because we have all these nifty little hacks and if you dare to suggest change to our shitty system, we could not allow that! We want to stay in our comfy zone, no no!
* no one can make a decision unless Mr. favorite-developer-everyone-likes says it's a good idea. And even if he's wrong, no one cares to listen to anyone else's idea on it. Stupid Feudalism. One man decides over the entire codebase. That's just idiocy. Where's TEAM in there?
* thinking years of experience equals intellectual capacity. It certainly does not! There are senior developers with 15 years of experience who don't even know how to open commandline, or they didn't even know about Chrome developer tools, or how the HTTP spec is built. That shit just makes me cry inside. How can you give these peoples the title of senior when they know less than a freshman year kid?!
* ignoring people's education and/or capacities. "You just graduated, so you're a noob". Right, I know more than you, you idiot. You've demonstrated your ignorance often enough. Stupid ignorant colleagues.
* blaming politics (every team blames the other team and there's constant tension)
* roaming ignorance (no one in the company, and I mean no one, besides me, knows enough about Information Technology to make competent decisions or analysis)
Politics:
What gives testers the idea that they know more than other members of the team? Why do they treat devs like they are mentally challenged?
What gives PO's that same idea?
What gives managers the idea that they can just yell at developers and threaten them with time pressure? Yeah, because the customers are breathing down their neck.
Just because I am a Junior Developer, that makes me stupid? I am tired of no one caring to listen to my ideas. I could save the company at the snap of a finger but everyone ignores my opinion (and often facts) on things.
People come in and instead of asking me for help, they ask everyone else for help, including the people who don't know shit about IT; now that's insulting.
Anyway, toxic politics.3 -
The senior dev is mentoring our new recruit.
😨 I know, my face too.
When the newbie asked how to deploy, senior dev says, "Well, we copy and paste this folder from your local box to the server you need to deploy it on. Much better than that git shit, you have so much more control!"
😭4 -
this is how I destroyed my career in IT and how I'm headed to a bleak future.
I've spent the last 10 years working at a small company developing a web platform. I was the first developer, I covered many roles.
I worked like crazy, often overtime. I hired junior dev, people left and came. We were a small team.
I was able to keep the boat afloat for many years, solving all the technical problems we had. I was adding value to the company, sure, but not to mine professional career.
There was a lot of pressure from young developers, from CEO, from investors. Latent disagreement between the COO and the CEO. I was in between.
Somehow, the trust I built in 10 years, helping people and working hard, was lost.
There was a merge, development was outsourced, the small team I hired was kept for maintenance and I was fired, without obvious explanations.Well, I was the oldest and the most expensive.
Now I'm 53, almost one year unemployed.
I'm a developer at heart, but obsolete. The thing we were doing,
were very naif. I tried to introduce many modern and more sophisticated software concepts. But basically it was still pure java with some jquery. No framework. No persistency layer, no api, no frontend framework. It just worked.
I moved everything to AWS in attempt to use more modern stack, and improving our deployment workflow.
Yes, but I'm no devop. While I know about CD/CI, I didn't set up one.
I know a lot of architectural concepts, but I'm not a solution architect.
I tried to explain to the team agile. But I'm not a scrum master.
I introduced backlog management, story mapping, etc. But I'm not a product manager.
And before that? I led a team once, for one year, part of a bigger project. I can create roadmap, presentations, planning, reports.
But I'm not a project manager.
I worked a lot freelancing.
Now I'll be useless at freelancing. Yes I understand Angular, react, Spring etc, I'm studying a lot. But 0 years of experience.
As a developer, I'm basically a junior developer.
I can't easily "downgrade" my career. I wish. I'll take a smaller salary. I'll be happy as junior dev, I've a lot to learn.
But they'll think I'm overqualified, that I'll leave, so they won't hire me even for senior dev. Or that I won't fit in a 25 y.o. team.
My leadership is more by "example", servant leader or something like that. I build trust when I work with somebody, not during a job interview.
On top of that, due to having worked in many foreign countries, and freelancing, my "pension plan" I won't be able to collect anything. I've just some money saved for one year or so.
I'm 53, unemployed. In few years time, if I don't find anything, it will be even harder to be employed.
I think I'm fucked25 -
The management brought some devs from another outsourcing company into our project to overcome the fact that we, the existing developers, are retarded. We are retarded because they change the scope continously (aka daily) and we can’t keep track with their requests. They want something and after we implement it, they want it changed. Completely.
Instead of getting the project and deep dive into it using the materials (setup, architecture etc.) I prepared along the way, their PM said that we have to make some low level knowledge transfer. This knowledge transfer session happened on Friday.
The presenters were me and one of my colleagues. After 2 hours of training, we found out that the supposed senior devs don’t know how to use GIT, they don’t have a clue about Spring nor Angular (nor any SPA framework), their only questions were ‘why didn’t you use X?’ (where X = bootstrap, jQuery etc.) etc.
What is even funnier: during the presentation we were asked to keep a screen sharing opened during working hours for a couple of days just so the new devs could see how we are working.
Guess what happened with the scope on Friday evening: it changed again because ‘you got new devs so there will be multiple resources to handle tasks’.
2 more weeks and i’m out of there...7 -
The difference between a junior and senior developer is that junior developers will schedule meetings at 1PM forcing everyone to come back from lunch early. Senior developers will move that shit to 2 o'clock.5
-
Had a LinkedIn recruiter contact me a few months ago, I usually get one of these a week at minimum and usually more frequent the moment a start a new position. I hate that!
Anyway, story and rant:
The recruiter sent me a position that was pretty good, lots of benefits, not too far to drive, some remote days. With the usual list of responsibilities that they themselves dont know what half of them are but put them on anyway, I would automate those anyway if I wanted to work there.
All looks great, I ask if they can send me more details and the budget they company has for the position.
This was for a Senior position so I thought they would know what industry standard is.
The recruiter replies with a budget: $2000
I actually couldn't believe that they thought that was acceptable amount of money for the amount of responsibilities they wanted this new senior guy to do, no wonder the previous guy left.
I respond and told her that the amount is extremely low for what they want and I dont think they will find someone with the skills they need at that amount. I would be willing to talk for a minimum of $4000 and thats not guaranteed until I can go for a formal interview to find out exactly what the company needs.
The recruiters replay was probably the rudest anyone has ever been to me online, lol! She insists its industry standards and any Senior would be lucky to get such a great paycheck, the company has been in business for years and their developers have always been happy and paid industry standards.
I respond again and tell her that im getting $3800 at this small company where I currently am and if the "international company with clients all over the world" wants to have my skill set why is it that they cant pay premium salaries!? As well as the graphs for my Country on what the current industry standards are for salaries in my industry.
She never replied, but I kept tabs on the company she was recruiting for. They are still looking for a senior dev, its been 8 months now and no one has applied.
I am so happy more developers are standing up for themselves and not taking agencies bullshit with low salaries, crazy overtime and bad technical specs.
Note: Amounts are made up, was just to show comparison.4 -
No rant, just appreciation
A thank you to the senior developers out there who take the time to help us juniors out, to look at our (potentially) shitty code and point out how to improve it.
To help us to see the bigger picture and maybe take a more lengthy approach to a problem that'll pay off in the end.
And lastly, thanks for allowing us to learn from your years of bug splatting, stack tracing, null pointers and error messages.
You guys rock5 -
In the Ruhr area (Germany) we have some very old, very strange words with strange meanings. One of those words is ‚Prutscher‘.
A Prutscher refers to a person who does things but never gets a good result, due to lack of knowledge or simple carelessness. Most of the time, Prutschers are people who are interested in certain subjects and often work in the related jobs, but who lack the motivation to properly train themselves, learn what there is to learn and to always keep up with their technologies .
Here are a few examples I've stumbled upon so far in my career:
- Developers in their 60's who read a book about PHP 25 years ago and decided to become a software developer. Since then haven't read anything about it. Who then now build huge spaghetti monoliths for large companies, in which they prefix every function, every variable and constant with their initials and, of course, use Hungarian notation.
- People who read half a fucking tutorial about <insert any fancy js framework here> and start blogging/tweeting about it
- Senior web developers who need to be told what the fuck CORS is and who can't even recognize CORS related errors in their browser console.
- People who have done nothing else for 18 years than building websites for companies on Wordpress 1.x and writing few lines of PHP and Javascript from time to time. Those who are now applying as a frontend dev due to the difficult economic situation and are surprised that they are not accepted due to a lack of experience.
- Developers who are the only ones working on Windows in the team and ask their Linux colleagues for help when Windows starts bitchin.
- People who have been coding for 30 years, have worked with ~42 languages and don't know the difference between compiled and interpreted languages in the job interview.
- Chief developers at a large newsletter-publisher who think it's a good idea to build your own CMS (due to a lack of good existing ones, of course).
- Developers who have been writing PHP applications for multinational corporations for 25 years and cannot explain how PHP is executed. They don't even know what the fucking OPcache is, let alone fpm. FML
- People who call themselves professional developers but never ever heard of DRY, KISS, boy-scout rule, 12-Factor App, SOLID, Clean Code, Design Patterns, ...
- Senior developers wondering why the bash script won't run on their fucking Windows machine.
- Developers who consider Typescript to be a hindrance and see no value in it.
- Developers using ftp for deployments in 2022
- Senior Javascript Developer applying for a job and for whom Integer is a primitive data type in JS.
- Developers who prefer to code without frameworks and libraries because they are only an unnecessary burden/overhead and you can quickly code everything up yourself.
- Developers who think configuring their server(s) manually is a good idea.
You fucking Prutscher. What you have already cost me in terms of work and nerves. I can't even put it into words how deeply I despise you. I have more respect for the chewing gum that has been stuck in my damn trash can for the past 3 years than I do for you guys. You are the disgrace of our profession. I will haunt you in your dreams and prefix every fucking synapse of your brain with MY initials.
As a well-known german band once sang in a very fitting song: I wouldn't even piss on you if you were on fire.
If you recognized yourself in one of the examples here: FUCK YOU!29 -
New developers(5-6 years experience) these days are so pathetic. They dont have any sense of code review. All they want is to put their opinion out without giving any thought.
I had a PR for review today which contains mock specification to match a regular expression and return the corresponding response
The regular expression I put was
104000(02|06|20|48)
Now, this guy comes and puts a comment that we could "simplify" as 104000\d{2}
I replied, the ending digits are not contiguous. The specific pair of digits have to match for these mocks.
Then this guy replied, then we could simplify as 104(0{4}(2|6)l0{3}(20|48)).
I said, I cannot understand how that is simplification. Why do we need such a complex regex to match something very straight forward.
And the guy replied, we should be writing proper regexes, otherwise we could just specify everything explicitly.
I was like WTF man. You try deciphering this next week without taking at least a minute to know which values are matched.
Anyhow, another senior person approved my PR, and I merged it.12 -
My boss pays me well and treats me well, but he expects me to do project management (documentation, giving tasks to 2 junior devs, reviewing their code, helping them when they are stuck), coding, architecture and to finish the project in a time record time.
When I told him that this week I will not work on development but will start to do documentation because the project got so big that it is difficult to keep track, and also the other 2 developers are waiting for tasks for me to give them, he looked disappointed.
I noticed and told him that if he wanted to speed up development, he must hire another project manager, or another senior developer because I can not do them both and expect to finish in a record time.
He keeps asking almost every day, "When are we going live?"2 -
It horrifies me how many "senior developers" in our company do not understand branching in code repositories....9
-
!rant
Last week attended a conference of ~40 people. Some junior developers, and some very senior engineers at major tech companies. We all hung out and geeked out like normal (gasp!) humans, and had a great week together.
Nothing better than seeing a top engineer rock out to Lady Gaga @ karaoke. Amazing, exhausting week 🎊⛷🏕2 -
Kinda rant, kinda not.
At the start of this year all of my colleagues left company beacause of low raise. This process took like 3 months. After that I automatically became most senior in our team with 8 months of experience in my current company and 3 years total. It was rough days and still is. One downside is some days I can't even touch my own development tasks. Sometimes I ask for other developers help and assign them tasks. I'm evolving into team lead I guess. Yeah, more like junior team lead. But after few weeks I got a call from our cto and he told me they are raising my salary even I had a raise just 3 months ago. And he told me it will be raised again soon. Even my workload increased I'm still kinda having fun. I think its a bit early for me to be good at this role but I'm learning how to manage people :) Well, at least I got a raise6 -
After years around devs of all levels of expertise I have found the following to be true mostly of junior developers.
Junior devs seem to like to pick out a single (or few) idiosyncrasies of a language/framework and then call it shitty overall.
While senior devs have seen the small idiosyncrasies of many languages/frameworks and know that none of them are perfect and those quirks come with the territory.
It may also have something to do with senior devs having less to prove and therefore not wasting their time of such useless language debates....
ROUND 1: FIGHT!2 -
My last job before going freelance. It started as great startup, but as time passed and the company grew, it all went down the drain and turned into a pretty crappy culture.
Once one of the local "darling" startups, it's now widely known in the local community for low salaries and crazy employee churn.
Management sells this great "startup culture", but reality is wildly different. Not sure if the management believes in what the are selling, or if they know they are selling BS.
- The recurring motto of "Work smarter, not harder" is the biggest BS of them all. Recurring pressure to work unpaid overtime. Not overt, because that's illegal, but you face judgement if you don't comply, and you'll eventually see consequences like lack of raises, or being passed for promotions in favour of less competent people that are willing to comply.
- Expectation management is worse than non-existent. Worse, because they actually feed expectations they have no intention of delivering on. (I.e, career progression, salary bumps and so on)
- Management is (rightfully) proud of hiring talented people, but then treat almost everyone like they're stupid.
- Feedback is consistently ignored.
- Senior people leave. Replace them with cheap juniors. Promote the few juniors that stay for more than 12 months to middle-management positions and wonder where things went wrong.
- People who rock the boat about the bad culture or the shitty stunts that management occasionally pulls get pushed out.
- Get everyone working overtime for a week to setup a venue for a large event, abroad, while you have everyone in bunk rooms at the cheapest hostel you could find and you don't even cover all meal expenses. No staff hired to setup the venue, so this includes heavy lifting of all sorts. Fly them on the cheapest fares, ensuring nobody gets a direct flight and has a good few hours of layover. Fly them on the weekend, to make sure nobody is "wasting time" travelling during work hours. Then call this a team building.
This is a tech recruitment company that makes a big fuss about how tech recruitment is broken and toxic...
Also a company that wants to use ML and AI to match candidates to jobs and build a sophisticated product, and wanted a stronger "Engineering culture" not so long ago. Meanwhile:
- Engineering is shoved into the back seat. Major company and product decisions made without input from anyone on the engineering side of things, including the product roadmaps.
- Product lead is an inexperienced kid with zero tech background -> Promote him to also manage the developers as part of the product team while getting rid of your tech lead.
- Dev team is essentially seen by management as an assembly line for features. Dev salaries are now well below market average, and they wonder why it's hard to recruit good devs. (Again, this is a tech recruitment company)1 -
So I need some advice from some fellow devs here...
I recently accepted a job offer at a new company and I'll be leaving my place of work for the last 11 years. I'm a senior level dev who comes from a place where software is more of a secondary function and the skills of my peers are very... Atypical of most software developers.
My interview was ok, but I passed the mark barely - in that they recognize I'm rusty and have some gaps to shore up, but have decided to give me an offer anyway. I'm taking a "step down" to enter in as a level below senior to get my foot in the door of a real tech company.
I've got myself convinced I'm setting myself up to fail, despite being told by people that work there that they encourage mistakes and that they wouldn't be offering me a position if they didn't think I'd be successful.
Is it typical to feel inadequate and worried you'll be fired prematurely for underperformance? I've had little to no experience in a fast paced tech job so I have little to refer to. I was a very high performer where I'm coming from, but that's hard to equate to where I'm going. It seems like classic "impostor syndrome".
I've not even started there yet but I'm terrified my anxiety will get the better of me before I even have my first day there. Anyone out there have any advice?
I'm excited for this new opportunity but I can't seem to shake the fear of the unknown.4 -
How come it is so hard to find good developers. Have been doing interviews for a couple of weeks now (for a senior PHP developer role).
First round is me talking about the function and company, asking questions about candidates experience, wishes and we usually end in some tech conversations. Most of the resumes I got are pretty fucking good. I mean, experience with low-level languages, experience with the problems we need to solve here, contributions to open-source, experience in R and MathLab etc etc. On paper they look perfect.
For the second round I give them an assessment which they can do at home on their own machine in their own time. It's not a hard one, just some mathmatical problems they need to solve. A quick google GIVES the answer (no joke!!). But that's OK, I look at their code cleanliness, proper use of commenting so I can determine if they are solo-developers or fit good in a team and if they abstract repeated functions and make sure that they take their work seriously, you know the drill.
It pisses me off that I get BROKEN FUCKING CODE WHICH DOES NOT EVEN RUN and that I get code back which I look at and makes me vomit instantly, I mean, DO YOU EVEN TAKE YOUR PROFESSION SERIOUS? How dare you to ask for 50k the year, a lease-car, extra bonusses AND YOUR FUCKING CODE SPITS OUT COMPLETLY WRONG ANSWERS OR DOES NOT EVEN RUN WHAT THE FUCK DUDE GO BACK TO FROM WHICH EVER HOLE YOU CRAWLED OUT AND STOP WASTING OTHER PEOPLES TIME WITH YOUR FUCKING INCOMPENTENCE...19 -
When your daily scrum takes an hour because your senior developer co-worker gives unnecessary and incredibly detailed updates...
"Well, first I tried hiding the button, but it wouldn't come up when I needed it to, so then I made an options menu, but the sliding transition was difficult to implement, so then I..."6 -
Do you ever wonder if you got promoted to senior developer too early? I keep making stupid mistakes that get picked up by more junior developers at code review I need to up my game10
-
NGL hearing the head of I.T ask you to help a brotha out and "do your magic" makes one feel pretty fucking legit.
I know I pull some magical shit, I know most developers in senior level positions or management do, but I also know we all rarely get recognized. The fact that someone would know that what you do is basically magic for your institution makes one feel so fucking good.
I really fucking try. Shit is hard and holding an entire department together sometimes gets the best of me, but I fucking try.
wish you all the same feelings all the time, always4 -
A few days ago, the Senior Director of our department came over to the dev team and asked the senior developers to gather around, and she informed us that a competitor was talking shit about our company's websites on Twitter, and she asked us to tear the competitor's site apart and find everything wrong with it from a technical standpoint so she could retaliate. We ripped the competitor's site apart and found that they were using a stock WordPress template that they purchased for $50. And here they were talking shit about OUR websites!
She took our findings and reached out to the competitor, politely suggesting that they take can their stock WordPress site and shove it.
They promptly deleted their Twitter post.2 -
Internships are fucking bullshit and if more senior developers were to take the role of an actual mentor to coach juniors properly then the state of software engineering would be better.
Some people can be let down easy in terms of "this is not for you bruh", others can be built. I know that social interactions are not common for a lot of the morons in here, but being polite and kind is relatively simple if you know what you are doing. Being a dickhead != "royal levels of expertise" and if we were to coach more people into proper development practices then software would not be in such a shitty state.
For an environment that thrives in cooperation I find it hard to believe that we are still subjecting new people to the field to what can be considered slavery with little to actual no monetary compensation.
I removed many of the requirements for the application to a software developer job where I am at (I am the boss, I get to do shit like that) and my fight with HR was "I would rather someone fresh from college that I can coach properly than some dickhead with years on the field that won't listen to anything else than their own words"
Sure it would be slow, sure it would be hard, nothing ever is that simple, but my idea is "train this mkfer, level the fuck out of him, let him be off to great shit rather than giving him to some dickhead that will treat him like shit on account of being a newbie"
And yes, I do know how and what can go bad, I am going to have someone desinging shit in basic html/js/css with some php here and there not giving them the keys to every server I control. Thank you for your fucking concerns, I know what I am doing.
the experiment fails? GOOD more data for me.
Plus, you learn more when you teach others.16 -
Building a pull request on our Build Server takes 14 hours, it can do about 10 builds at a time and there are already 26 builds in the queue and it isn't even 10am.
I've been waiting for a build since I queued it on Friday - because the queue is actually a stack.
And management / senior developers are like...7 -
A software developer's experience life cycle:
0 - 5 years: attempt to replicate what your current senior is preaching, assuming that's the right way. Reading "Clean code" and preach it as gospel, even though you don't practice any of it.
6-12 years: gained the belief that you are better off coming up with solutions yourself, usually "sophisticated" and "elegant" which to everyone else (and also yourself a few years later) is an over-complicated inheritance ridden shit show. You have realised the "Clean code" movement is actually a cult but still believe code reuse is the holy grail.
13+ years: finally realized that simplicity and pragmatism is the most sensible way for most software development. Code is now readable, maintainable and functional. You took the few good bits from "Clean code" and ignored the extremism. These are the golden years.
The problem is most developers jump ship and stop developing before reaching the golden years, thus resulting in most software projects looking like shit.
Unpopular opinion, but it doesn't make it untrue.13 -
Attention Software Engineers!
Quit shooting yourselves in the fucking foot! And this ESPECIALLY goes to new grads. I get that you have just finished school. I get that you need a job! But don't fucking settle for a $30-$40k salary because you're "entry level"! The only reason why there are employers who offer that type of salary is because they know that there are enough idiots who will settle for it!
On average, an entry level software engineer's salary is between $50-$60k at the very least! For Senior developers, it is at least $80K/year (although an argument can be made for why they shouldn't settle for less than $100k/year).
Each time a moron low balls his/her salary, that brings down the market value for that talent. And keep this in mind! They don't have a choice but to hire you. They could choose to outsource their work to poorer countries but they don't want to do that due to obvious quality-related reasons so they HAVE TO hire you if they need the work done. And since the ball is in YOUR COURT, demand your fair salary. You went to school for 4 fucking years. You dealt with that stress for 4 fucking years. Why settle for a salary that you could've made without going to school?42 -
Now I am starting to understand the frustration of senior developers and their issues with management.
For the first two years of my career, I was a dev and a team lead, and all worked fine. In some situations, I did get frustrated and thought that was horrible.
But damn! Today I am having a 1 hour session at lunch time (said mandatory participation) with an "Atlassian Platinum Solutions Partner" on "Minimum Variable Bureaucracy".
I'm halfway down, and halfway dead. Just send me an email and I'm happy.4 -
Stack overflow was down..
I don't know why, but it developed some kind of respect for senior developers who don't had access to stack overflow in their time. -
"CTO" here.
Two week ago the CEO informs me that the "investor" want to put me in contact urgently with an external software house to help me with my "bottlenecks".
The investor goes immediately on holiday, so it's not available for explanations. The CEO doesn't know much.
Today I meet the software house CTO and CEO.
They tell me that I should do a transfer of knowledge with them. That they will respect my requirements, my schedule and that they want to help me.
During the meeting the business consultant explains "his" vision. Some new development nobody understand. Not even the CEO. The other cofounder is probably in disagreement but stay silent.
I agree to cooperate with them in due time and with due scope and planning.
It appears they already signed a contract with the investor. The investor is offering to us 40 days of a senior developer, for "free".
The CEO doesn't even know the economical details of the contract and he is surprised that has been signed.He also didn't know that a person will come over for 40 (?) days and that we will have to pay the transfer expenses.
I try to be friendly. I explain to them the issues I need to solve. I say specifically that I need help on certain tasks and that my wish is that nothing "new" will start until we fix some obvious problems.
After leaving, in the evening I receive an email from the software house guy, telling me that next week I MUST allocate a slot for technical transfer and the 2 weeks after for on site training. Like that. He also mention we "agreed" on that which is false. We agreed on me deciding the timing.
We are only 2 developers, at the moment and the other one will be on holiday next week, so I'm trying to get from him a lot of things I don't know because I don't know everything.
I'm not even sure I'll be able to explain how to prepare all the environment.
Worst thing is that I don't know what will be the scope of the project.
I really don't know how to behave.
I wrote back setting my conditions. I have holiday too. I have to prepare "documentation", explanation, etc.
I don't want the "senior dev" coming when I'm not present.
Maybe I was too weak answering and I should have started a fight immediately. Because he actually AGREED to let me decide and after that he set conditions on me immediately.
I don't know.
My stomach is burning, I had a very bad digestion with fever and headache, feel like puking, plus I spent several evening hours fixing the fucking Linux kernel bug.
I want to survive. I don't want to let them oust me in this stupid way. I want to fight.
I know that if I will explode, scream or whatever I will be at fault and I'll accelerate my demise.
When I try to be "diplomatic" actually I end up being weak.
When I try to be assertive I'm in fact rude and hysterical.
I can't think anything else.
This is what burnout looks like.19 -
So at this startup i was single iOS dude age 34, android had 1.5 dudes, one older, one you ger. That 0.5 younger was tech director, really good, so they churned for two guys. Millenial, nice guy, never making conflict, just being sleazebag.
Nobody explained to boss why iOS was always late with features, even when i complained. So i got help, 10 months later, project was unpolished but stable, codewise. Now i interview and hire a guy, age 27, who was all yeah dude no problem, and that being my first interview, i fell under his friendly appearance. I ignored a fact that he didn’t know 90% of stuff i was asking him, because he was so friendly and outgoing and we will do anything attitude.
The guy knew very little, was childish and irresponisble. He showed at work at noon. He started telling me what to do, his senior collegue who started the project. He argued about everything that i would tell him. So i spent three to four hours a day charting with him, because we were in different cities. He had two uears of experence, but he was below junior level. And he refused any of my advices for learning in free time. No, he said, thats my free time, you will not tell me what to do. Well, how do you plan on being better, i asked. He said, i learn by doing. But, since he was at his job only six hours a day, instead of eight, and since he was productive only for 2, i guess he was lazy.
He would deliver a UI he would make, without business logic, and tell it is done. Then clients would call me and ask why text fields are not saved..
This all took me month to understand. I lost time, i lost trust, and soon he was fired.
But, soon i was fired also, replaced by another two devs who i had interviewd and formed a team. I was discarded as trash, just like that. I have even worked overtime to catch up with android guys, unpaid.
Took me year to recover mentally from this.
Lessons learned: be objective when interviewing. Job is business, not friendship, trust no one, keep neutral on work. Leave honesty for someone else, honesty will be used against you. Never criticize two girls in office who disturb developers by talking about sex and dicks all the time, dressed sexy, they are girlfriends of people ranked above you. Leave code perfection for your projects.3 -
Just had one of the most cringiest HR interview ever. I'm looking for a new job, and yesterday applied for several med/senior backend developer positions and immediately got response from a well known software company.
We schedule a call today 9:00am, so I take homeoffice and wake-up half an hour earlier than usual.
First thing I notice, lady is 5mins late, but okay its morning, we're all humans, so I don't mind it even though some other person might call it a classical sign of disrespect and hangup right away.
First question: Why did you apply for our company?
- Euhhmm cause I'm looking for a new job and I saw your job ad yesterday?
Second question: Why would you like to work at our company?
- Left speechless.. Well I honestly don't know, not really following your company, I know that you exist but that's about it, shouldn't you be telling me this? (*heavy breathing on the other side*)
The rest of interview left me quite uninterested due to initial questions, like what the hell, I can imagine these being alright for interns and junior developers who might be fascinated by opportunity to work for a big and well known company to build their CV, but c'mon I've went through shit already and honestly don't care for who I work for as long as they have interesting projects, are paying me right and have couple small benefits I'm looking for such as homeoffice, gym card etc..8 -
My developer career has ended before I even start. After failing to get a job, I have started a business men services company. Maybe in the future, I will include software development to the business. So no more rants from my side at least for one year.
Fuck you all fucking retarded companies who wants junior developers with the same experience of senior developers.6 -
Anything that's written in Java at my current company.
It's a mess, inefficient and appears to be written by monkeys...
And somehow the ppl that wrote this stuff were senior developers....3 -
Had a five hour long debate with one of our Senior Developers today about pull request etiquette.
His view was reviewers should always email or call him before adding comments to any of his requests and they should never block them as he should be allowed to code in "his own style" and should be able to approve his own pull requests.
I explained that we have code standards and an agreed PR workflow be needs to comply with.
He then started talking about meteors and plane crashes. Literally no helping some people.18 -
I feel like resigning from a company that i joined 3 weeks back.
I don't like to code in PHP and the manager wants to stick on to that , no new developers joining the company and php is one of the reason. The code is a mess. Every now and then some other team come running for a change like one button to do some shit and then for a fix after 15mins of release.
So many database operations are happening manually. No innovation in the team. Developers are very boring , women being senior developers and team leads brings stability but there is no innovation , excitement or any enthusiasm. All my team members are very happy doing mediocre shit. Manager talks about agile development and they are following that at a level where every half a day some requirement changes.
I m tired of being a developer that fixes the same mediocre shit.
Its too boring.6 -
This is deployed on PROD(!) from my Senior Dev's app. Have I told you devs how much I hate this guy already?7
-
This was not exactly the worst work culture because the employees, it was because the upper level of the organization chart on the IT department.
I'm not quite sure how to translate the exact positions of that chart, but lets say that there is a General Manager, a couple of Area Managers (Infrastructure, Development), some Area Supervisors (2 or 3, by each area), and the grunts (that were us). Anyway, anything on the "Manager" was the source of all the toxicity on the department.
First and foremost, there was a lack of training for almost any employee. We were expected to know everything since day-1. Yes, the new employees had a (very) brief explanation about the technologies/languages were used, but they were expected to perform as a senior employee almost since the moment they cross the door. And forget about having some KT (Knowledge Transfer) sessions, they were none existent and if they existed, were only to solve a very immediate issue (now imagine what happened when someone quit*).
The general culture that they have to always say "yes" to the client/customer to almost anything without consulting to the development teams if that what was being asked to do was doable, or even feasible. And forget about doing a proper documentation about that change/development, as "that was needed yesterday and it needs to be done to be implemented tomorrow" (you know what I mean). This contributes to the previous point, as we didn't have enough time to train someone new because we had this absurd deadlines.
And because they cannot/wanted to say "NO", there were days when they came with an amount of new requirements that needed to be done and it didn't matter that we had other things to do. And the worst was that, until a couple of years (more or less), there was almost impossible to gather the correct requirements from the client/user, as they (managers) "had already" that requirement, and as they "know better" what the user wants, it was their vision what was being described on the requirements, not the users'...
And all that caused that, in a common basis, didn't have enough time to do all this stuff (mainly because the User Support) causing that we needed to do overtime, which almost always went unpaid (because a very ambiguous clause of the contract, and that we were "non-union workers"**). And this is my favorite point of this list, because, almost any overtime went unpaid, so basically we were expected to be working for free after the end of the work day (lets say, after the 17:00). Leaving "early" was almost a sin for the managers, as they always expected that we give more time to work that the indicated on the contract, and if not, they could raise a report to HR because the ambiguous clause allowed them to do it (among other childish things that they do).
Finally, the jewel of the crown, is that they never, but never acknowledge that they made a mistake. Never. That was impossible! If something failed on the things/systems/applications that they had assigned*** it was always our fault.
- "A report for the Finance Department is giving wrong information? It's the DBA's fault**** because although he manages that report, he couldn't imagine that I have an undocumented service (that runs before the creation the report) crashed because I modified a hidden and undocumented temporal table and forgot to update that service."
But, well, at least that's on the past. And although those aren't all the things that made that workplace so toxic, for me those were the most prominent ones.
-
* Well, here we I live it's very common to don't say anything about leaving the company until the very last day. Yes, I know that there are people that leave their "2-days notice", but it's not common (IMHO, of course). And yes, there are some of us that give a 1 or 2-weeks notice, but still it's not a common practice.
** I don't know how to translate this... We have a concept called "trusted employee", which is mainly used to describe any administrative employee, and that commonly is expected to give the 110% of what the contract says (unpaid overtimes, extra stuff to do, etc) and sadly it's an accepted condition (for whatever reasons). I chose "non-union workers" because in comparison with an union worker, we have less protections (besides the legal ways) regarding what I've described before. Curiously, there are also "operative workers", that doesn't belong to an union, but they have (sometimes) better protections that the administrative ones.
*** Yes, they were in charge of several systems, because they didn't trust us to handle/maintain them. And I'm sure that they still don't trust in their developers.
**** One of the managers, and the DBA are the only ones that handle some stuff (specially the one that involves "money"). The thing that allows to use the DBA as scapegoat is that such manager have more privileges and permissions than the DBA, as he was the previous DBA2 -
Deep Thought Rant
It's funny how the world works these days...companies only looking for "senior *something*" developers to work...
Mentorship and internship also do matter. What's happening?...sure you can contribute to open source but having a mentor also helps. Working as an intern allows one to see not only tech bit but workplace environment. How to deal with deadlines, feeling good and wasted at the same time when one bug that took a 3 minutes to fix but 3 hours to find, presenting your work; well what's working only, being bashed when it's your fault or not (even though that sucks), learning from your mentor and so on
Are their companies that still do this?3 -
!rant I need job advice. Please reason with me.
I am 26, got 2 years of experience in c# and unity3d.
I did some research and it turns out that the minimal paying average with my job/experience over the whole country is at least 300€ a month more than what i get payed currently.
I made a list of pros and cons, and am just not sure what would be smartest to do in the long run. Here is a list for both options, please chime in on me if you can!
Points for current job:
Permanent contract (hard to fire me etc.)
Get to make mostly mobile games but nothing really big
Fun small team whom i get along with (i am on the spectrum and can be hard to deal with social or costumer related things)
Rarely any overtime (i like to know my hours)
Easy but slow jobs (badly organized, drag on forever)
Rarely challenged and thus boring me
I get to shoot nerf guns at colleagues whenever
Low chance of a 300€/m pay increase (not worth it to boss, financials aren't that great but the company is promising)
Points for any other job:
Unknown working condittions
I am probably bad and uknowledgeable about any tool they give me to work with because my experience is so monotone
Start on short term contract again all over
At the least a 300€ net increase a month
Prob closer to home then 1h drive away
I get to learn new things but give up on games/apps as i know them
Probably get knowledgeable seniors
Probably end up in a bigger more serious company where i am just a number
I am bad in new social envirnoments, oh the angst is real
And a few things besides it are that i personally only have as goal to own my own house with my fiance as soon as i can. And this means i will need to take out a 200k loan or something along those lines, to be paid off over 30 years max.
This means that the permanent contract is very valuable in my eyes, but so is monthly pay increase.
I want to have fun in my job, i want to learn new things and better ways. But i also want to be able to say "enough" to something if it overwhelms me. I just know some things are not for me and i would mess up if i were made to do them. I fear that to not be an option in a big company. I would be forced out of my comfort zone without any regard for me or my learning curve.
Any advice is welcome. Please keep it general if you can so others can learn from this as well. Seniors advice will probably be helpfull to all starting programmers!10 -
So I am helping coworker with debugging a weather forecast feature on a digital display solution we sell to hundreds of companies.
He says he just doesn't know why but the forecast data isn't correct.
I open up file where forecast data is stored and the data hasn't been updated in 6 months.
Thats when he realizes no one has paid the forecast service provider in 6 months...
And this guy is supposed to be senior to me?1 -
HR people on LinkedIn. What the fuck? Do you seriously believe you can attract qualified developers by telling them you’re looking for ninjas, jedis or life savers? I for one am still fairly new to the job so I don’t consider myself to be by any means a coding wizard, and I don’t think any strong senior developer is gonna be seduced by your catchy terminology (I may be wrong about that). Come on, talk to us like any recruiter would in any other line of business. No need to replace the words "qualified" or "experienced" with your stupid magic words, unless you want to sound like you’re desperate7
-
Another gem from same co-worker who is a "Senior Developer". Unnecessary function that fills a dropdown box(?!) with numbers 1-100. I really really hate this guy.
Bonus: Best Practice Example of Naming Variables...4 -
So this just happened,
Me and my co-worker (we are junior developers) were working on the same bug, it was a post call throwing a server exception.
We had asked for help to debug this issue from a senior developer the day before, he was quite busy with his own tasks.
He is one those kinds who would keep working even if the entire bay is wasting their time, always keeping to himself, needless to say I haven't seen him smile.
Back to my story, he couldn't spare time yesterday so we tried to squash the bug ourselves thinking he might have forgotten we had called him.He then comes out of nowhere, he firsr checks the button bindings, params sent and the call being made.
He then went through the backend code strategically placing the break points, clicks and debugs a few times and then opens the console. BAM!!!!
" D' hell yo !!" Shows up in the console, not just once but multiple times. Turns out I forgot the logger I had placed in the catch block.
He turns to me in super slo-mo looks me in the eye and whispers "what the hell yo!" and kept quite for some time, meanwhile the sense of cringe was slowly creeping on me. That was when he let out a loud blurt and the entire cabin turned to us. Needless to say it was awkward.
His smile was creepy though :/ -
Sometimes it's better to burn a bridge so you don't even think about crossing it in the future.
See, I left a company some years ago because I didn't see my future in it and all management combined had a collective intelligence of a chicken.
However, I got a call from them a couple of months ago asking me if I could return. The salary was double and the working arrangement seemed fine. On paper. WFH. Flexibile hours...
Since I actually liked the project itself for its technical challenge, I accepted the return offer. What a bad idea that was.
Of course, the things that made me leave for the first time had only gotten worse. Bad leadership, idiot developers in team leader positions. Tech debt higher than Mount Everest. Bad infra that makes you want to off yourself every time you work on it. The whole circus.
Seriously, the "senior" team leader will happily merge code that includes assert(true == true), but hold up a well written MR because he has a personal vendetta with the developer.
Personally, I always check him whenever he starts being an ass. But the poor juniors are in hell. They're terrified.
Now I'm leaving again, but this time I've made sure I can't come back.3 -
I feel like I need to morph into an octopus to keep efficiently doing my work.
Too few hands, too few brains...
And I just can't fucking focus on 5 things fucking simultaneously...
I was coding.
-> Customer calls
-> New ticket with higher priority
-> I get back to coding
-> Boss calls, do ticket first
(Rinse and repeat)
I don't even know if I'm able to at least get a raise as a trainee, but our company only has two (2) developers right now, including me... And since our senior left, we do a fuckton more work.
I do way more than other trainees in my class and compared to some other colleagues, seriously.
In any case, we got reviews and feedback rounds with our bosses next week, and I wrote a DIN A4 page of reasons why I want to get at least a small raise.
Not gonna read it off, of course, but gonna go along it...
Wish me luck.5 -
When I started my current job I fucked up my first deploy ever so slightly but In the end managed to get it going with a quick hack (unpacking our war file modifying some properties and a jsp page before restarting the tomcat server )
One of the senior developers was having a really bad day and decided I was who he was going to take it out on, calling me a cowboy (in the Uk that’s a bad thing) blah blah, being really nasty and condescending to me.
I was about ready to shout at him as it was his dodgy configuration that caused the issue in the first place, but instead I took a deep breath and firmly (but calmly) told him never to speak to me like that again or we would have a problem.
5 years later he’s never spoken to me like that again and is actually a pretty decent guy.
Moral of the story people have bad days but also don’t let people take the piss. -
As a junior developer it's frustrating to not have the skill yet of mentally mapping data models in your head, so that you can figure out bugs.
I see senior developers being able to quickly solve bugs because they can translate code into data models and they can figure out what's wrong.
Me on the other hand, I spend hours and days with my hands in my hair trying to figure out why my algorithm isn't giving me back what I expect it to.
It'll take experience.. I only have 1 year experience..10 -
went on contract for an insurance company to build their new platform. looking at the current system, found that they used lookup tables but they were putting the "description" column of the lookup into the main tables. I said that they should be putting a foreign key reference into these tables and the senior developers response... "then it would come up with a number rather than the description when I query the table"3
-
Serously I just recoverd from being overworked and senior developers are complaining to me that their code does not work???
DUDE just read the fucking error and start googling!
How the fuck do you think I learned software development?
It's a fucking matter of trail 'n error!2 -
My Favorite Senior Dev: Hmm, I don't understand this error.
Neighboring, Competent SQL Developer Coworker: What does it say?
Senior Dev: It says, "Cannot insert the value NULL into column 'person', table 'PEOPLE'; column does not allow nulls..."
*5 minute silence*4 -
I really think there should be a subject in every CS course to teach us how to handle/work-under Grade-A assholes and dumbfucks. Not that it would help, but atleast warn us on what we are getting into.
In my opinion, development is not *that* hard or frustrating but is made so by these shitty people. But again, what do I know.
I was scolded by my boss for using for-loop to iterate through an array recently. Apparently for-loop is not used in real world projects and this iteration should be done "in-memory". My colleagues and I are still trying to understand and process that.
I was asked to add fitbit integration to a project within 2 hours just because I had "already done it a week ago" in *another* project. Luckily, it was then given to a "senior" developer who took 4 days for it and essentially copy-pasted my work without much changes, ofcourse it stopped working every now and then.
I am given unreal deadlines on my tasks, on technologies I haven't worked on before, and then expected to churn out production ready code with no bugs in them.
My boss literally just sends me the links of 1st three google results on the problems I encounter and report, after humiliating me ofcourse. Yes, I did google it and yes I went through all I could find from Google forums to GitHub issues. When the library/plugin author himself says that this feature is not yet available, don't expect me to develop it in 2 hours you dumbfuck.
And for the love of God, please stop changing the data model every single day and justify it with agile development. Think before making any changes to it. Ever heard of Join queries? Foreign keys? Or any other basic database concepts.
We reached a point where each branch in the repo had different data model. Not kidding. And we were a team of just 4 developers. Atleast inform us when you change models after discussing it with your shit for knowledge "senior" developer, so we don't have to redo it all over again. The channels on slack are not for sharing random articles only.
I am just waiting to complete my year here.
I should have known what I got myself into the day he asked me to remove the comments I had added to explain what my code does. Why you ask? Because "we don't write comments". -
So when I joined the company 2 months ago I was told they offered flexible working, today I received this email. (I can't help but think it is aimed at me given I often arrive between 9 and 10....I'm always the last to go home)
Oh and yes they have named some of the team DevOps and others just Developers, they haven't quite grasped the concept!
-----------------------------------------------------
Morning All,
I have been noticing the start time for all the team members. Some like to start early while some likes the late start. So before Senior management raises any questions below is the shift pattern I would like everyone to stick to it.
I have assigned name against each of the shift which I am aware of. If you would like to change it please let me know. We need at least one Developer between 08:00- 17:30 and at least one Devops between 07:00 – 17:30.
If we have any emergency issues and takes longer to fix it , I would appreciate if you guys can work after your shift. We can adjust this overtime by leaving early next day or whenever possible.
7:00 – 15:30 - @Michael Smith
7:30 – 16:00 - @Sarah Twist @Jim Bob
8:00 – 16:30 - @Lesley Matthews
8:30 – 17:00 - @Bill Best
9:00 – 17:30- @Jennifer Rowe @me!
9:30 – 18:006 -
Web development:
I'm honestly happy that my toxic "senior" colleague is gone.
- Didnt learn a single thing in the last 10 years. Used godamn serverside rendering with Jquery / plain JS for a highly interactive business Web Application. Yeah boii, save that UI state in the relational database, good job.
- Every error in his shit was the error of someone else.
- Manipulative as hell. Type of guy that is your best buddy to gather information.
- Blocked entire technical progress in the Web department by manipulating people. Understandable. I mean if your legacy shit is gone...
- Kept backend developers from doing their job with unjustified complaints about structures... etc to justify that he needed an insane amount of time to implement simple things.
- Cried for every shit to be documented to the last bits. Did never do any documentation himself.
Fuck these people, honestly.1 -
Question for all senior developers / lead developers / higher ups out there.
If you were looking for a job, and this company that you applied for which specifically stated that they are looking for a senior developer on the job listing page, asks you to be a junior developer for a few months to prove yourself, would you still be interested in working for that company?22 -
Hey, senior developers, is there a reason for this?
I just can't believe it.
The line that makes me wanna kill is the
$("#" + id).val(val);
Taken from a very profesional site.9 -
Yesterday my boss forwarded a mail to me. A Senior Project Leader of a Software Company asked him if there is a library for filling out pdfs. Apparently, he can neither google nor ask their own developers... WTF?
-
Usually developers start in a team where there are senior and you are a junior who do things and ask things.
Then there's me that starts alone in a company to develop a software in a machine that you've never seen before (POS) with only 15 hours of preparation class, no documentation and with a apprenticeship contract.
I still didn't start but I brought the POS in my home to familiarize with it and in a week I still haven't be able to execute the sample application.
And you could ask, why did you accept if you aren't able? Well, I need money, he searched me through the high school (I had an high score so a lot of people search me) and he required only C, that I know. FML12 -
http requests
literally the bread and butter of any software engineer building applications, you would ASSUME they know what they are doing...
and you're gonna write a seperate http get and post function for every type you have?
apparently stuff like this that is written by "senior" developers? you don't even have a basic understanding of software...
i'm won't do it that way, becuase i'm an adult, not a child
what i'm going to do is write a HTTP request util function that can be used for any type and HTTP verb. DRY, single responsibility, etc.
imagine making the http request itself a responsibility coupled to the type 😂😂😂😂
get a clue and come back later
i can't tell anymore if my thoughts are so outlandish compared to everyone else that no one understands them, or if i've been doing this so long that i just immediately understand what needs to be done and don't know how to explain it to anyone else anymore (or take the mental effort to)
peace out
oh P.S.: imagine thinking the SOLID principles are only applicable to OOP
stay safe out there folks, its getting more painful every day8