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 - "best teammates"
-
Yesterday I had my performance review discussion with my manager after about 6 months into the job, which is my first dev job. Before this, I had spent about 2 years in a support role after graduation, but always yearned to build something cool and be a full time developer. Hence I had made the lunge in spite of a pay cut into a development role.
For the past 6 months I was asked to develop a bunch of features on top of legacy code which is ~15 years old. I did my best and brought in the best ideas and practices onto the table and delivered on time. The features turned out great. I enjoyed working with the team and the team loved me back!
But at the back of my mind, I was hoping that I would get to work on something new and relevant. To quench this thirst, I used to spend my personal time on side projects.
The managers and the leads who have been observing me all along, told me yesterday that my manager got AMAZINGLY positive feedback from the leads and my teammates (who are like 10 years senior to me). Going forward, I get to work on any CRAZY idea and pick up any technology I like with the goal of revamping our product. Essentially I get to work on my side projects full time as long as it adds value to the company.
Ohhhhhh YEAH!
Wish me luck. 😎1 -
I once reviewed a Pull Request made by a fairly junior developer. They had joined recently, and this was one of the first times they had to touch a bigger part of the code.
Due to a mix of inexperience, new (to them) coding standards and lack of git knowledge, they ended up with a mess of a PR, with a few thousand lines changed, and no way to split it off.
I ended up spending the best part of a day reviewing the whole thing and requesting changes.
Even with the long list of improvements, however, I wasn't sure they would get the magnitude of their fuckup.
So I decided to use a real-world, palpable way to show them what they had done: I went and printed the github diff for that PR. It rendered the glorious amount of 73 pages.
I'll never forget their face, and those of their teammates, when I barged into the room with a thick wad of paper and deposited them on their desk.
At least it worked. I never saw another big, ill-thought pull request from them again.3 -
One thing I learnt after over two years of working as a programmer is that sometimes making your code DRY is less important than making your code readable, ESPECIALLY if you're working on a shared codebase. All those abstractions and metaprogramming may look good in your eyes, but might cause your teammates their coding time because they need to parse your mini-framework. So code wisely and choose the best approach that works FOR YOUR TEAM.7
-
Resumes don't mean jack shit!!
I just got off an interview call with a candidate for a hardware role. On paper this guy is absolute gold, having worked for some of the best robotics companies and research groups(in India at least) It took me an hour to realize that the was just spitting out buzz words. So I started asking him some very fundamental questions, like ohms law and such.. high school stuff. But, phrased in real world terms. And it took me another half an hour to realize that the guy is dumber than a sack of peanuts!
I can't believe how easy it is for people to coast by on paths paved by seniors and teammates. By any objective assessment this guy would be lucky to get a job as an electrician and instead I'm wasting my time interviewing him for a six figure salary (well, the Indian equivalent). Gaaah!!7 -
!rant but emotional
Work is significantly less terrible than it could be because I have the best teammates and i can come rant here and be understood. My non tech friends just ask why I don't quit if I "complain" so much. My dev and tech friends are all together at another company and have releases every week they're working on. I appreciate you all and am happy I found this community. 💚1 -
oh, it got better!
One year ago I got fed up with my daily chores at work and decided to build a robot that does them, and does them better and with higher accuracy than I could ever do (or either of my teammates). So I did it. And since it was my personal initiative, I wasn't given any spare time to work on it. So that leaves gaps between my BAU tasks and personal time after working hours.
Regardless, I spent countless hours building the thing. It's not very large, ~50k LoC, but for a single person with very little time, it's quite a project to make.
The result is a pure-Java slack-bot and a REST API that's utilized by the bot. The bot knows how to parse natural language, how to reply responses in human-friendly format and how to shout out errors in human-friendly manner. Also supports conversation contexts (e.g. asks for additional details if needed before starting some task), and some other bells and whistles. It's a pretty cool automaton with a human-friendly human-like UI.
A year goes by. Management decides that another team should take this project over. Well okay, they are the client, the code is technically theirs.
The team asks me to do the knowledge transfer. Sounds reasonable. Okay.. I'll do it. It's my baby, you are taking it over - sure, I'll teach you how to have fun with it.
Then they announce they will want to port this codebase to use an excessive, completely rudimentary framework (in this project) and hog of resources - Spring. I was startled... They have a perfectly running lightweight pure-java solution, suitable for lambdas (starts up in 0.3sec), having complete control over all the parts of the machinery. And they want to turn it into a clunky, slow monster, riddled with Reflection, limited by the framework, allowing (and often encouraging) bad coding practices.
When I asked "what problem does this codebase have that Spring is going to solve" they replied me with "none, it's just that we're more used to maintaining Spring projects"
sure... why not... My baby is too pretty and too powerful for you - make it disgusting first thing in the morning! You own it anyway..
Then I am asked to consult them on how is it best to make the port. How to destroy my perfectly isolated handlers and merge them into monstrous @Controller classes with shared contexts and stuff. So you not only want to kill my baby - you want me to advise you on how to do it best.
sure... why not...
I did what I was asked until they ran into classloader conflicts (Spring context has its own classloaders). A few months later the port is not yet complete - the Spring version does not boot up. And they accidentally mention that a demo is coming. They'll be demoing that degenerate abomination to the VP.
The port was far from ready, so they were going to use my original version. And once again they asked me "what do you think we should show in the demo?"
You took my baby. You want to mutilate it. You want me to advise on how to do that best. And now you want me to advise on "which angle would it be best to look at it".
I wasn't invited to the demo, but my colleagues were. After the demo they told me mgmt asked those devs "why are you porting it to Spring?" and they answered with "because Spring will open us lots of possibilities for maintenance and extension of this project"
That hurts.
I can take a lot. But man, that hurts.
I wonder what else have they planned for me...rant slack idiocy project takeover automation hurts bot frameworks poor decision spring mutilation java11 -
We all know that being distracted while coding is frustrating. That's why me and my teammates (we are 3) we "protect" each other while on "full dev mode" - meaning anyone coming to disturb one of us while in that state, the other push him/her away.
The most productive 2 weeks of my life 😂😂1 -
So I finished my first semester in NYU as a CD master. During the first semester I took a class called heuristic problem solving. Every week a competitive game will be introduced to us, and will be played in two weeks. And trust me, the games aren't easy. I teamed up with another guy who I had no idea was and named our team as we don't know. At the end of the semester we won seven out of nine games, and by won I meant that we beat the whole class in the match. And my teammate became a really good friend.
By telling this story, I want to make a point. I love problem solving, and not problems in a algorithm book where you apply an algorithm and do some trick to solve it, but real world problem where you hope for the best and anticipate, predict your opponent's move. However, American's school system doesn't teach that.
When I applied to graduate school, no school wanted me because I have an average GPA of 3.6, and no outstanding achievements. I can solve problems in my dream becaus I have an active mind, I can propose solution to a project one month before my teammates realized they essentially were doing what I told them the solution should be. But so what, I can't write those on my application.
One of the professor told me that my professor shared the story of my team during a faculty dinner, and they were very impressed by our achievement. So I guess I'm not dumb. But after all, companies and schools will look at your transcript and decide who you are.
I love myself for having random thoughts all the time that can lead to innovative problem solving. But I also hate myself for not able to study like the good kids are.10 -
I'm so fed up of this shitty ultra-ortodox industry
I've worked on many different projects, been in many different teams. It's an ever changing industry, but, surprisingly, it's so orthodox. Dev industry nowadays have some rules, that everybody adopts them as "best practices". You have to work on pull requests, and several of your teammates have to review your shit (as if they have nothing better to do).
I'm sick of people using fucking DTOs in shitty frameworks like Laravel. Using DTOs in Laravel is like putting mustard in a fucking chocolate cake.
I'm so fed up of SPAs and node.js. I've yet so see a single SPA that handles jwt tokens correctly. I'm tired of spending hours and hours, days and days, struggling with thousandls of layers of abstractions instead of being productive and getting the shit done.
Because end customers don't give a shit about your "best practices": They have a problem and you are getting paid for it to be solved, not for spending hours and hours struggling with stupid Javascript and its crazy async nature and their crappy libraries.
Damnit. I say. Now. I now feel better. Thanks for listening :)14 -
What was your most disappointing moment as a software developer?
Mine was the realization that when you're working for someone, all they want to see is the final product. The people paying you don't give a shit whether you put your braces on a new line, your domain model doesn't call a database directly or if you're applying the best practices. Your teammates do, but the people paying you don't.
People hire you to get the job done, and that job is to solve a problem for someone. Not in the way that's best for you, but in the most effective way for them. Since I realized this, I lost some pride in my work.5 -
Update to my last rant:
The best teammates are those who don't give a fuck about the project until one week before the deadline and then have the fucking audacity to tell you what to do. -
Debating on whether to quit my job.
Part of the reason it's hard for me to make a decision is there are a lot of good things about my job:
- almost all the projects we work on are blue sky; no technical debt anywhere
- great teammates; people help each other out and generally there's a good vibe
- reasonable boss; he's totally fine with me managing my own schedule, and since I get my work done, he basically never questions when and where I work
- about 1 hour of corporate meetings each week
- best healthcare I've ever had; basically everything is paid for
- 3 weeks PTO & all major US holidays
- free food; generally healthy office snacks and such
So why would I want to quit this environment?
- I hardly get to code anymore. About 2 years ago, I got asked if I would mind helping spec out projects. Since then, I've moved from writing code related to projects to helping my teammates understand the business situation so they can build the right thing.
- I'm in lots of meetings. So we have very few meetings for the company itself. We have a bunch of customer meetings, though. And progressively, I've getting pulled into meetings where there's really no reason for me to be there, aside from "we should have a technical person present."
- The sales people are getting tired of turning down clients that our product isn't targeted for. So they're progressively pushing to make products in those areas. Unfortunately, I'm the only one on the engineering team has any experience in that other tech stack. Also, the team really, really don't want to learn it because it's old tech that's on its way out.
- The PM group is continuously in shambles. Turnover there has averaged 100% annually for about 5 years. Honestly, IMO, it's because they're understaffed. However, there has been 0 real motion to fix this other than talk. This constant turnover has made it so that the engineering team has had to become the knowledge base for all clients.
- My manager has put me on the management track, but has been very slow to hand off anything. I'm the team supervisor, and I have been since the beginning of the year formally. When the supervisor quit last year, it basically became obvious to me that I was considered the informal supervisor after that. However, I can't hire or fire; I can't give a review; I don't have any budget; I can't authorize time off. So what do I do now? Oh, I'm the person that my boss comes to ask about my co-workers performance for the purpose of informing promotion/termination/pay increases. That's it. I'm a spy.4 -
The best teammates are those those who don't care about the project for 3 months and then one week before the deadline ask: "Is there anything left to do?"4
-
Hi, everyone!
I was struggling to write this rant (it's been a while since I've posted anything here) and was trying to put in enough details, but it was getting too long and heavy, so I thought I should try to keep it concise.
I get frequent headaches and feel physically and mentally exhausted all the time. Here's a little list of what I think lead to all this -
- Leading a team for the first time
- Not-so-great junior teammates
- Working with backend for the first time (doing it on top of my frontend work)
- Long working hours (unpaid overtime)
- Being underpaid (for all the things I now have to do)
So, I overworked myself (and still fell short in delivering my sprint goals) and after some time, considering all of the above things, I decided that the best course of action would be to give my notice and take a break for a month or two.
I talked to my boss about my struggles and my intention to leave, and after some discussion, he basically said that the difficult part of the project was over and things would get smoother from the next sprint, and so I should stay on and discuss on the matter again after the sprint. That sprint has passed now and I have still somewhat struggled to work each day with diminishing motivation.
I'm not sure if this is the right time to leave, and I just don't have enough energy to look for another job and go for interviews. So, I guess it is a bit of risk not having something lined up before I quit my (first ever) job, but I think I shouldn't have much difficulty finding something for myself.
At this moment, I don't know what to do, but maybe, if things continue to be dour, I may hand in my notice soon.8 -
Oh guys >.> I was so excited when I have been hired in new company. Sooo excited...but that fallen like a house of cards, after hard reality of poor quality onboarding. I got computer after 2 weeks of work, accesses to repo and databases after 1.5 months, first commit after 2 month... support from teammates 3/10, nobody had time for me, or they told me few words without full context. My first task have been refactoring of module. Okay...but nobody had full config for this app. It had 275 bundles but more than 70 didn’t work. Well...okay I tried my best... okay...last month and few task later (nobody could tell me how that system really work)... and now it’s fourth month...this one is the last one... enough of this bullshit for me :/ I’m out. Next month will be better, new job new me. I lost 4 months of my life...
Did you have some sort of that situation in your career? How common it is? -
The bugs that make you think are the best/worst.
Had a ghost foreign key constraint from a dropped table. Cant drop it from a non existant table.
Turns out the dev copied a file for the new table and since you can technically name those foreign keys anything you want, there were no errors when he ran it.
Also sloppy/overworked dev teammates are the worst...
Also I'm pretty sure rule 2 of programming is "Never Copy and Paste"