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 - "internal teams"
-
rant? rant!
I work for a company that develops a variety of software solutions for companies of varying sizes. The company has three people in charge, and small teams that each worked on a certain project. 9 months ago I joined the company as a junior developer, and coincidentally, we also started working on our biggest project so far - an online platform for buying groceries from a variety of vendors/merchants and having them be delivered to your doorstep on the same day (hadn't been done to this scale in Estonia yet). One of the people from management joined the team working on that. The company that ordered this is coincidentally being run by one of the richest men in Estonia. The platform included both the actual website for customers to use, a logistics system for routing between the merchants, the warehouse, and the customers, as well as a bunch of mobile apps for the couriers, warehouse personnel, etc. It was built on Node.js with Hapi (for the backend stuff), Angular 2 (for all the UIs, including the apps which are run through a WebView wrapper), and PostgreSQL (for the database). The deadline for the MVP we (read: the management) gave them, but we finished it in about 7 months in a team of five.
The hours were insane, from 10 AM to 10 PM if lucky. When we weren't lucky (which was half of the time, if not more), we had to work until anywhere from 12 PM to 3 AM, sometimes even the whole night. The weekends weren't any better, for the majority of the time we had to put in even more extra hours on the weekends. Luckily, we were paid extra for them, but the salary was no way near fair (the majority of the team earned about 1000€/mo after taxes in a country where junior developers usually earn 1500€/month). Also because of the short deadline given to us, we skipped all the important parts like writing tests, doing CI, code reviews, feature branching/PR's, etc. I tried pushing the team and the management to at least write tests and make feature branches/PRs, but the management always told me that there wasn't enough time to coordinate and work on all that, that we'll do that after launching the MVP, etc. We basically just wrote features, tested them by hand, and pushed into the "test" branch which would later get tested and merged into master.
During development, one of the other juniors managed to write the worst kind of Angular code you could imagine - enormous amounts of duplication, no reusable components (every view contained the everything used in the view, so popups and other parts that should logically be reusable were in every view separately), fuck - even the HTML was broken (the most memorable for me were the "table > tr > div > td" ones, but that's barely scratching the surface). He left a few months into the project, and we had to build upon his shit, ever so slightly trying to fix the shit he produced. This could have definitely been avoided if we did code reviews.
A month after launching the MVP for internal testing, the guy working on the logistics system had burned out and left the company (he's earning more than twice the salary he got here, happy for him, he is a great coder and an even better team player). This could have been avoided if this project had been planned better, but I can't really blame them, since it was the first project they had at this scale (even though they had given longer deadlines for projects way smaller than this).
After we finished and launched the MVP, the second guy from management joined, because he saw we needed extra help. Again I tried to push us into investing the time to write tests for the system (because at this point we had created an unstable cluster fuck of a codebase), but again to no avail. The same "no time, just test it manually for now, we'll do that later when we have time" bullshit from management.
Now, a few weeks ago, the third guy from management joined. He saw what a disaster our whole project was. Him joining was simply a blessing from the skies. He started off by writing migrations using sequelize. I talked to him about writing tests and everything, and he actually listened. He told me that I'm gonna be the one writing them, and also talked to the rest of management about it. I was overjoyed. I could actually hear the bitterness in the voices of the rest of management when they told me how to write the tests, what to test, etc. But I didn't give a flying rat's ass, I was hapi.
I was told to start off by writing a smoke test for the whole client flow using Puppeteer. I got even happier, since I was finally able to again learn new things (this stopped at about 4 or 5 months into the project).
I'm using jest as the framework and started writing the tests in TypeScript. Later I found a library called jest-extended, but it didn't have type defs, so I decided to write them and, for the first time in my life, contribute to the open source community.19 -
hey there, long time no rant.
remember that manipulative, sociopathic angry manchild turdface PM, the kind that gives you a never ending rant inspiration? the one that got immortalized in like 90% of my rants?
well... it's time for the final update.
i decided to leave the team some months ago. my boss reacted very cool and supportive and suggested topics i could work on instead. when i told my colleague, he decided to leave the team at the same day. we both also complained at HR and added some papertrails about PM's shenanigans.
shortly after, another guy from the team quit and left the company, and i know that it was 100% because of this PM.
so, there were 2 devs left from originally 6 in PM's team.
some other people in the environment of this PM quit, one of his subordinates and someone from a greater project in which the PM's project was embedded.
after some internal investigations and discussions, the PM's team was completely kicked out of this greater project, since after ~ a year, this team was neither able to deliver anything useful nor to define what it actually was what they wanted to provide. instead, they actively blocked the project, solution finding and cooperation between teams. and this is quite very much PM's fault.
the final move came this month when PM got fired. i think, management finally realized that he is a total fraud who has no clue about the whole matter (neither what devices we build nor about software development). or management. or leadership. and that all he can do is produce hot air and bullshit people for some time to make them believe he knows something.
not sure how long he'll still be around, but i'm happy when i don't have to see his face ever again. i'm just sorry for the next company he'll be moving to...4 -
Was asked to help a team of interns in a remote country, finish an app. Not only were they terrible at literally every aspect of development, but were arrogant and argued their "new" ways were right.
Spent weeks on the project being nice, trying to help them, sending them links to standards and documents, pointing out unit tests shouldn't be failing, everyone needs to have the same versions of the tools etc. You know, basic shit.
Things got quite heated a few weeks in when they started completely ignoring me. Shit was breaking all over the place and crashing, as I thought we were going to build it one way, and they went and built it another.
Was practically begging the team architect and my manager for help dealing with them. Only reply I got was the usual "were aware of the problem and looking into it" bullshit.
Eventually after the app was done, a mutual agreement was reached that the 2 teams would split (I maintain they were kicked out). All the local devs were happy, managers had mentioned how difficult they were and it would be great for us to finally work on our own.
So I thought everything was fine ... until my end of year performance review came along.
Seems I'm quite poor at "working with others" and I "don't try hard enough with others", it was clear I was struggling with the remote team and "made no effort".
WELL FUCK RIGHT OFF
Not being cocky, but I've never had anything like that in a performance review for the past 7 years. I'm a hard worker, and never have trouble making friends with colleagues. Everyone in the country complained about these remote fuckers, even the manager, who I begged for help. And the end result is I need to work harder.
I came in early, stayed late to fit their timezone, took extra tasks, did research for them, wrote docs. And I was told to work harder.
Only reason I didn't quit, was my internal transfer request was approved lol. New team is looking at projects orders of magnitude more impressive, never been happier.3 -
1. Scripting out a team. I've built a collection of bash scripts to do what one of our teams does. Except the script does it in 30min and always does it well where that team used to take 4 to 10 hours and almost always missed something in the way.
2. Automate 70-80% of our BAU tasks with a single >4k loc bash script. Integrations with servicenow, lots of internal portals, predefined huge sets of commands to run on separate servers or lists of servers, do all sorts of diagnostics, schedule hw maintenance for DC folks, chase for approvals, track CHNG/CTSK tickets in a graphical chart so we would not miss any of them and lots lots more.
Finally we were able to afford time to make some coffee/tea.
These are the bau optimizations I'm proud of the most. And they have made significant impact on how our teams operate.
Whoever recognizes both company values in the tags and know what is that company - are they still using ´S´ in unix team? :)1 -
So a company I'm working at has this internal product. I just got employed and was put into that team.
"First task: refactor some of the code"
Alright, I start refactoring. Oh I may need to write a small class for this one. And then rewrite this a bit. And then rewrite that a bit. And then rewrite everything.
"Why are you rewriting most of my code?"
oh i would not have needed to do so if your code was not COMING OUT OF YOUR ASS and if all the teams had FREAKING PROPER API DOCUMENTATION9 -
I miss when my job was just about coding, I could spend entire workdays writing C# or TypeScript while listening rock or metal with few meetings in between, being very passionate in programming and computers sometimes I found was I doing so engaging which I spent more than my 8 hours workday on company's code base trying to improve it and my older coworkers were very happy with my code.
Then a "promotion" happened, I went to work directly with a client, a huge enterprise which is working on renovating his internal software and here the fun stopped. Long useless meetings are a regular occurrence, there are absurdly long procedures to do everything (for example since CI/CD is leaky we have to do dozens of workaround to get a microservice deployed) and having very little written documentation this gives an huge advantage to people which actually enjoy to spend their entire workdays on a MS Teams call over "lone programmers" like me which actually feel significant fatigue in doing that (alone sometimes I was able to log 12+ hours of programming daily between work and personal projects while after 3 hours of PP I feel drained) since the information passes in meetings/pair programming and I dread both.
I feel which my passion is still there, I still enjoy coding, tinkering with Linux and BSD, broadening my knowledge with technical books and having passionate conversation about tech but I dread my job, sometimes I try to look at it under a more optimistic eyes but most of the times I just end disappointed.3 -
* Teams meeting, doing some early testing with the client *
Dev Team: This is an early build, so please be aware that bugs can occur at this stage. (That's why we didn't want to show it but you insisted)
Client: Sure, don't worry.
* 15 minutes later, first bug happens because some state management at the front end was not tunned yet *
Client: Can you solve this bug?
Dev Team: Sure, just let us replicate it and we come back to you as soon as...
Client: Can you solve it now?
Dev Team: ... Okay, let us ser whats happening and we will come ba...
Client: You don't need to hang up, just solve it.
*Dev Team internal chat*
Me: Fuck
Other dev: Fuck
My leader at the time: Fuuuuuck
PS: This happened in two separate occasions. I hated that project.6 -
Several years ago I joined the company I currently work for, as a software support person, with the intention of eventually moving toward the development team.
After a few years doing that, I gradually realised that working in the development team for our products didn't seem that appealing after all, so I went for a more technical support role (essentially debugging all the really complicated problems and reporting the bugs to the devs) which I find fascinating - trying to solve these puzzles is an interesting challenge. It can take days, sometimes weeks to get to the bottom of something really inexplicably weird.
As part of this I get to do some internal dev work on the teams projects (nothing that gets used directly by external users though) and have learned loads of things from my boss over the years (even before I joined this team).
It has its frustrating moments of course but I am definitely glad I didn't follow my original intentions of just being a developer on our main products.
Sometimes what you think you want isn't actually what's ideal for you :)2 -
A bug is born
... and it's sneaky and slimy. Mr. Senior-been-doing-it-for-ears commits some half-assed shitty code, blames failed tests on availability of CI licenses. I decided to check what's causing this shit nevertheless, turns out he forgot to flag parts of the code consistently using his new compiler defines, and some parts would get compiled while others needed wouldn't .. Not a big deal, we all make mistakes, but he rushes to Teams chat directing a message to me (after some earlier non-sensible argument about merits of cherry picking vs re-base):
Now all tests pass, except ones that need CI license. The PR is done, you can use your preferred way to take my changes.
So after I spot those missing checks causing the tests to fail, as well as another bug in yet another test case, and yet another disastrous memory related bug, which weren't detected by the tests of course .. I ponder my options .. especially based on our history .. if I say anything he will get offended, or at best the PR will get delayed while he is in denial arguing back even longer and dependent tasks will get delayed and the rest of the team will be forced to watch this show in agony, he also just created a bottleneck putting so many things at stake in one PR ..
I am in a pickle here .. should I just put review comments and risk opening a can of worms, or should I just mention the very obvious bugs, or even should I do nothing .. I end up reaching for the PM and explained the situation. In complete denial, he still believes it's a license problem and goes on ranting about how another project suffering the same fate .. bla bla bla chipset ... bla bla bla project .. bla bla bla back in whatever team .. then only when I started telling him:
These issues are even spotted by "Bob" earlier, since for some reason you just dismissed whatever I just said ..
("Bob" is another more sane senior developer in the team, and speaks the same language as the PM)
Only now I get his attention! He then starts going through the issues with me (for some reason he thinks he is technical enough to get them) .. He now to some extent believes the first few obvious bugs .. now the more disastrous bug he is having really hard time wrapping his head around it .. Then the desperate I became, I suggest let's just get this PR merged for the sake of the other tasks after may be fixing the obvious issues and meanwhile we create another task to fix the bug later .. here he chips in:
You know what, that memory bug seems like a corner case, if it won't cause issues down the road after merging let's see if we need even to open an internal fix or defect for it later. Only customers can report bugs.
I am in awe how low the bar can get, I try again and suggest let's at least leave a comment for the next poor soul running into that bug so they won't be banging their heads in the wall 2hrs straight trying to figure out why store X isn't there unless you call something last or never call it or shit like that (the sneaky slimy nature of that memory bug) .. He even dismissed that and rather went on saying (almost literally again): It is just that Mr. Senior had to rush things and communication can be problematic sometimes .. (bla bla bla) back in "Sunken Ship Co." days, we had a team from open source community .. then he makes a very weird statement:
Stuff like what Richard Stallman writes in Linux kernel code reviews can offend people ..
Feeling too grossed and having weird taste in my mouth I only get in a bad hangover day, all sorts of swear words and profanity running in my head like a wild hungry squirrel on hot asphalt chasing a leaky chestnut transport ... I tell him whatever floats your boat but I just feel really sorry for whoever might have to deal with this bug in the future ..
I just witnessed the team giving birth to a sneaky slimy bug .. heard it screaming and saw it kicking .. and I might live enough to see it a grown up having a feast with other bug buddies in this stinky swamp of Uruk-hai piss and Orcs feces.1 -
Internal users are the worst. They act like you owe them the world. STFU and read the goddamn documentation.4
-
So someone complained to my bosses boss about some internal page where I collected some of our own funny git commit messages, because they were not "meaningful", and I had to take down said page.
Fuck that narrow-minded seriousness, why be so German? If we have to debug multi-threaded C++ programs, we need that bit of fun and sarcasm to stay sane. But probably that someone is a member of some of these "professional" Agile teams that waste a day a week with fucking retros, sprint planning or other mind-crippling meta stuff, then evaluating frameworks and tools, while we are doing motherfucking programing. -
TL;DR: A new "process" for collaboration between teams was created in order to stonewall requests from my team.
A couple months ago, we created a new Dev team that specializes in writing internal tools. This team was staffed with internal developers, and got a separate manager. The whole point of this team was to collaborate with my dev team so we can both help each other develop tools that the company needs.
One of the developers that was on my team went over to this team while he and I were still working on a big application. For a few weeks, he still worked on this application as he normally would, and we'd sit with each other and work through features together whenever we needed a fresh set of eyes.
Well, eventually his new team got protective of him and created a new "process" for our teams to request assistance from one another. So now instead of just popping over to someone's desk to ask a quick question, you have to send an email to the team and request that you can borrow that particular developer for a question, and then the entire team sits down and discusses whether or not they're going to allow that person to answer your question. Then after a week of discussion, if they decide to allow it, they schedule a meeting for a week later, in which you will get the question answered.
So instead of just spending 2 minutes to ask and answer the question, you have to spend weeks in order to request assistance, and then schedule a meeting.
It's ridiculous, and it's all because his team got protective that he was working with another Dev team. Dev teams collaborate all the time, and work together. My team is constantly helping other teams, and we don't have this ridiculous process. We get asked a question, and we answer it. Simple as that.
Last week, I sent an email for assistance in completing a feature, and didn't hear back. I talked to the Product Owner for the team, and he said "Just send an email," to which I responded that I did and hadn't got a response. He said "Oh....." I then told my boss that this is an enormous bottleneck, and he seemed surprised hearing that this is a bottleneck.
A week passed and today I still hadn't got a response, so my boss reached out to the Product Owner to push him. Finally, I got a response and they scheduled a meeting to answer my question 3 days down the road. So it's going on 2 weeks to get this simple question answered.
Normally I'd just have the other developer come over and help, but apparently they yelled at him the last time he did that.
The issue is that the process was created with the assistance of our "senior" developers, who never work with this other team in this capacity, so they just nodded and smiled and let them put this ridiculous process in place.
Like, get off your high horses. You don't "own" him, he's allowed to collaborate with other teams. This question would've taken literally 10 minutes, but because of your new "process" you've turned it into a 2 week debacle and you've effectively delayed the app launch with your pettiness.
They say that this process isn't intended to prevent us from getting assistance, and that might not have been the original intention of the Product Owner/manager, but it's very clear that the developers on the other team are taking advantage of it and using it as a big stonewall so they can beat around the bush and avoid providing assistance when it's needed.
If this becomes a trend, I'm going to schedule a meeting (which apparently they love to do,) and we're going re-work this entire process, because it's extremely counterproductive and seems to only exist in order to create red tape.3 -
Hi I’m a Python Developer, tired of doing internal applications using Excel as a UI. I’m thinking of proposing to turn most of our projects into internal web apps instead. Has anyone gone through this sort of problem?
My team is quite pro at using Excel, so naturally they prefer to use the tools I build from Excel. Some of those tools are also used by external teams, but they are not as capable with Excel, so they need supervision and guidance.
There are multiple concerns that arise:
- I code on Mac, but they need to run it on Windows, so compatibility issues
- Some of their laptops might not have enough resources to run the tasks
- Errors are harder to trace and could be very user-specific.
- New developers might not be familiar with Excel and the way to integrate with Python
I would like to know your opinion or criticism10 -
Studying is frustrating.
I'm in school for IT Engineering and my country decided, that universities have to be in half contact and half non-contact classes, so I have to attend bi-weekly. The other week I'm supposed to join online classes, where the whiteboard is recorded with a 2009 laptop's webcam and the audio is also internal, if even the freaking teacher manages to not forget to start the teams meeting.2 -
Why do I want to use in-house "products" when I could go third party.
I feel like when I build in-house I want a bespoke solution that's easy for MY use case. trying to "productize" it for internal teams is counter productive3 -
So my current company held a dev showcase last week. It was an event to show the different projects/tech stacks that different teams are working on/with. There's about 12-14 teams in our company. My team lead and I were brainstorming ideas on what to show on our booth. And I told him, I have an Intel RealSense developer kit that we can use. Anyway, fast forward to the day before the event, I was still developing our app/game for the booth. Just an emotion detector and you have to trick the app with your facial expressions. (Weird and fun, I know). The head honcho walked past the team lead and I and looked over the demo that I was playing around and he said that: "That's not work. You're wasting time again."
We were both irritated by his comments because he's one of the top dogs in the company and he surely knows about the event. Also, it's our way of showing to him that we're flexible in doing fun stuff instead of just enterprise and internal systems!
What a fucking kill joy!