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 - "software project management"
-
Oh, man, I just realized I haven't ranted one of my best stories on here!
So, here goes!
A few years back the company I work for was contacted by an older client regarding a new project.
The guy was now pitching to build the website for the Parliament of another country (not gonna name it, NDAs and stuff), and was planning on outsourcing the development, as he had no team and he was only aiming on taking care of the client service/project management side of the project.
Out of principle (and also to preserve our mental integrity), we have purposely avoided working with government bodies of any kind, in any country, but he was a friend of our CEO and pleaded until we singed on board.
Now, the project itself was way bigger than we expected, as the wanted more of an internal CRM, centralized document archive, event management, internal planning, multiple interfaced, role based access restricted monster of an administration interface, complete with regular user website, also packed with all kind of features, dashboards and so on.
Long story short, a lot bigger than what we were expecting based on the initial brief.
The development period was hell. New features were coming in on a weekly basis. Already implemented functionality was constantly being changed or redefined. No requests we ever made about clarifications and/or materials or information were ever answered on time.
They also somehow bullied the guy that brought us the project into also including the data migration from the old website into the new one we were building and we somehow ended up having to extract meaningful, formatted, sanitized content parsing static HTML files and connecting them to download-able files (almost every page in the old website had files available to download) we needed to also include in a sane way.
Now, don't think the files were simple URL paths we can trace to a folder/file path, oh no!!! The links were some form of hash combination that had to be exploded and tested against some king of database relationship tables that only had hashed indexes relating to other tables, that also only had hashed indexes relating to some other tables that kept a database of the website pages HTML file naming. So what we had to do is identify the files based on a combination of hashed indexes and re-hashed HTML file names that in the end would give us a filename for a real file that we had to then search for inside a list of over 20 folders not related to one another.
So we did this. Created a script that processed the hell out of over 10000 HTML files, database entries and files and re-indexed and re-named all this shit into a meaningful database of sane data and well organized files.
So, with this we were nearing the finish line for the project, which by now exceeded the estimated time by over to times.
We test everything, retest it all again for good measure, pack everything up for deployment, simulate on a staging environment, give the final client access to the staging version, get them to accept that all requirements are met, finish writing the documentation for the codebase, write detailed deployment procedure, include some automation and testing tools also for good measure, recommend production setup, hardware specs, software versions, server side optimization like caching, load balancing and all that we could think would ever be useful, all with more documentation and instructions.
As the project was built on PHP/MySQL (as requested), we recommended a Linux environment for production. Oh, I forgot to tell you that over the development period they kept asking us to also include steps for Windows procedures along with our regular documentation. Was a bit strange, but we added it in there just so we can finish and close the damn project.
So, we send them all the above and go get drunk as fuck in celebration of getting rid of them once and for all...
Next day: hung over, I get to the office, open my laptop and see on new email. I only had the one new mail, so I open it to see what it's about.
Lo and behold! The fuckers over in the other country that called themselves "IT guys", and were the ones making all the changes and additions to our requirements, were not capable enough to follow step by step instructions in order to deploy the project on their servers!!!
[Continues in the comments]26 -
I’m kind of pissy, so let’s get into this.
My apologies though: it’s kind of scattered.
Family support?
For @Root? Fucking never.
Maybe if I wanted to be a business major my mother might have cared. Maybe the other one (whom I call Dick because fuck him, and because it’s accurate) would have cared if I suddenly wanted to become a mechanic. But in both cases, I really doubt it. I’d probably just have been berated for not being perfect, or better at their respective fields than they were at 3x my age.
Anyway.
Support being a dev?
Not even a little.
I had hand-me-down computers that were outmoded when they originally bought them: cutting-edge discount resale tech like Win95, 33/66mhz, 404mb hd. It wouldn’t even play an MP3 without stuttering.
(The only time I had a decent one is when I built one for myself while in high school. They couldn’t believe I spent so much money on what they saw as a silly toy.)
Using a computer for anything other than email or “real world” work was bad in their eyes. Whenever I was on the computer, they accused me of playing games, and constantly yelled at me for wasting my time, for rotting in my room, etc. We moved so often I never had any friends, and they were simply awful to be around, so what was my alternative? I also got into trouble for reading too much (seriously), and with computers I could at least make things.
If they got mad at me for any (real or imagined) reason (which happened almost every other day) they would steal my things, throw them out, or get mad and destroy them. Desk, books, decorations, posters, jewelry, perfume, containers, my chair, etc. Sometimes they would just steal my power cables or network cables. If they left the house, they would sometimes unplug the internet altogether, and claim they didn’t know why it was down. (Stealing/unplugging cables continued until I was 16.) If they found my game CDs, those would disappear, too. They would go through my room, my backpack and its notes/binders/folders/assignments, my closet, my drawers, my journals (of course my journals), and my computer, too. And if they found anything at all they didn’t like, they would confront me about it, and often would bring it up for months telling me how wrong/bad I was. Related: I got all A’s and a B one year in high school, and didn’t hear the end of it for the entire summer vacation.
It got to the point that I invented my own language with its own vocabulary, grammar, and alphabet just so I could have just a little bit of privacy. (I’m still fluent in it.) I would only store everything important from my computer on my only Zip disk so that I could take it to school with me every day and keep it out of their hands. I was terrified of losing all of my work, and carrying a Zip disk around in my backpack (with no backups) was safer than leaving it at home.
I continued to experiment and learn whatever I could about computers and programming, and also started taking CS classes when I reached high school. Amusingly, I didn’t even like computers despite all of this — they were simply an escape.
Around the same time (freshman in high school) I was a decent enough dev to actually write useful software, and made a little bit of money doing that. I also made some for my parents, both for personal use and for their businesses. They never trusted it, and continually trashtalked it. They would only begrudgingly use the business software because the alternatives were many thousands of dollars. And, despite never ever having a problem with any of it, they insisted I accompany them every time, and these were often at 3am. Instead of being thankful, they would be sarcastically amazed when nothing went wrong for the nth time. Two of the larger projects I made for them were: an inventory management system that interfaced with hand scanners (VB), and another inventory management system for government facility audits (Access). Several websites, too. I actually got paid for the Access application thanks to a contract!
To put this into perspective, I was selected to work on a government software project about a year later, while still in high school. That didn’t impress them, either.
They continued to see computers as a useless waste of time, and kept telling me that I would be unemployable, and end up alone.
When they learned I was dating someone long-distance, and that it was a she, they simply took my computer and didn’t let me use it again for six months. Really freaking hard to do senior projects without a computer. They begrudgingly allowed me to use theirs for schoolwork, but it had a fraction of the specs — and some projects required Flash, which the computer could barely run.
Between the constant insults, yelling, abuse (not mentioned here), total lack of privacy, and the theft, destruction, etc. I still managed to teach myself about computers and programming.
In short, I am a dev despite my parents’ best efforts to the contrary.30 -
Dear Indian Companies,
Why do you hire for a role and then say: "We dont have that role but then we want you to grow up to be a Generalist"!
6 years as a build, release and SCM guy at Moto and Nokia back then, I shifted to this big Indian IT corp coz Nokia was shutting down...
A week into my orientation (which is a crazy weirdness inducing ritual in and of itself), the new manager I'm supposed to be working with comes up and says- "Here's the code repo, there are 2 open jQuery issues, fix them!"
I'm not really sure what to say at this point because jQuery is nice and all but thats not who I am.. I'm the infra / DevOps guy. And this is circa 2012 when DevOps as a term was just hotting up...
Tell me to setup a multi-stage pipeline and automated test cycles, I'll do it drunk, but oh no! bug fixing on a jQuery script? Noooo!!!!! I just dont have the chops for it.
So long story short, I get reported to HR for insubordination - Yeah, Go Figure!
Cue: HR meeting
HR: You wont work?
Me: I cant work on jQuery. I am a sysadmin / devops guy... Give me a project that involves those skills and I'll work.
HR: But we hired you to work on jQuery.
Me: But you did not mention jQuery / UI / UX in the job description - Pulls up email and shows JD for interview which says Symbian, Build, Release, Configuration Management but NOT jQuery.
HR: ....
Me: :-/
HR: But we want you to be a generalist.
Me: #wtf
HR: We want an engineer to be able to do anything he is tasked with!
Me: Can I know my last working date here?
And thats how my career at a glorious IT corporation just went poof!
When I think back on it, I feel good that I chose to do what I wanted to get better at and what I loved working on...
And this is the problem with IT companies in our country - They play with people's aspirations and passions... To the point that all thats left of a software engineer is the looking forward to pay day so he can start the damn cycle all over again.11 -
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 -
So i was working with a small company which were developing software for insurance sector. It was decided then that there should be an app for windows phone community and i was hired to that job.
It took me almost a month to finish the job. Please keep in mind that project was huge and already developed for android counterpart and was a hit in market. This was a chance given to me to prove myself and i proved it.
First month was fantastic for the company as software the company made was not available for windows phone. Price has been set for the software was higher in those time. Almost $15.
Excited by the success i added some more features which were not available on android counter part.
But price was very high. Even i asked management to drop the price because there were less windows phone user but no body listened.
Result : in a year app has made roughly 5000 download in which only 200 paid the actual price. Company asked me to take down the app from store. I was blamed for my over confidence in adding features that this made app less usable. They did not say a word to business managment team. I was fired.
Rough, cruel world.
6 month ago i published my app for same purpose with same feature set and different UI. And made it free. Completely free. Added a link to pay developer $0.5 or Rs 30.
Result: i have now 10 thousands plus download in last 4 month in which almost 3000 users have donated already.
Now i have my resource and my confidence and making an android app for same purpose.
This is my story and is not fake, i am 28 years old. If you think you can, you can.
Amen.4 -
So today I got let go from my job.
I've worked for this company for about 2.5 years, and soon after joining I became the only IT resource for software. I had to support literally everything after they fired the rest of the team, but I did a great job and have been praised by all the management at the company.
A few months ago, after a salary review and a frank discussion with my boss and his boss, they agreed that I am due for a raise. They had a massive project coming up with a lot of extra expenses, but I was told that right afterward they would be giving raises.
I spent tons of late nights and weekends on this project, and we were able to get it mostly finished about a 1.5 months ago. I was instrumental in the project (the rest of the IT team didn't even know how to set up simple DNS records). An email was sent to the whole company thanking me for all the work I put into the project.
A week ago, I messaged my boss to ask about the status of raises as he had told me they should be going out at the beginning of this month. He said there won't be any raises, and that's all I heard. Then today I get a call telling me that they are letting me go.
Let me get this straight: you led me on with talk of a raise just to keep me here working long hours for your big project, and then you fire me after recognizing what a great job I did? That's just sick. I have watched them treat other employees and partners unethically, but it took getting it first hand to realize how bad it really is. My teammates were in shock when I said I was leaving as they have all leaned on me very heavily.
Fortunately, I have had several offers come in over the last few months (2 this week) for more pay. I only held off because of the lies I was told about receiving a raise and out of a false sense of loyalty. I'm not worried about my future at all, just angry at the way I was treated.29 -
So as quite some people know on here, I am strongly against closed source software and have a very strong distrust in it as well.
So next to some principles (and believes etc etc etc) there is one specifc 'event' which triggered the distrust in CSS (No not Cascading Style sheet, I mean Closed Source Software :P). So hereby the story about what happened.
I think it was about 5 years ago when a guy joined my programming class (I wasn't in uni although I studied but for the sake of clarity, lets just call it uni for now (also, that makes me feel smarter so why the fuck not!)) in uni. He knew a shitload about programming for his age but he was convinced that he was always right. (that aside)
Anyways, at some point we had to work in groups on this project (groups for specific tasks) and he chose (he loved it, we hated it, he had the final say) Trello for 'project management'. He gave everyone (I was running Windows for a little bit at that moment because the project was in C# and the Snowden leaks had not arrived yet so I was not extremely uncomfortable with using Windows, just a lot) this addon program thingy he created for Trello which would make usage easier. I asked if it was open source, he replied with 'No, because this is my project.' and although I did understand that entirely, I didn't feel comfy using it because of it's closed source nature. Everyone declared me paranoid and he was annoyed as hell but I just kept refusing to use it and just used the web interface.
*skips to 2 years later*
I met that guy again at the train station at a random day! Had the usual 'how are you and what's up after a few years' talk with him and then he told me something that changed my view on closed source software for most probably the rest of my life.
"Hey by the way, do you remember that project of a few years back where you didn't want to use my software because of your 'closed-sourceness paranoia'? I just wanted to say that I actually had some kind of backdooring feature build in which (I am not going to say what) allowed me to (although I didn't use it) look at/do certain things with the 'infected' computers. I really wanted to say that I find it funny how you, the only one who didn't give in to my/the peer pressure, were the only one who wasn't affected by my 'backdoor' at that moment! Also your standards towards the use of closed source software probably played a big part probably. I find that pretty cool actually!"
Although I cannot confirm what he said, he was exactly the type of guy who would do this IMO (and not only IMO I think).
So yeah, that's one of the reasons AND the story behind a big part of why I don't trust closed source software :).5 -
I developed a simple scholarship management system for my school using Laravel, MySQL, jQuery and Bootstrap, I did it for free since college students from my country have to pay social service to get their degrees. Everyone in the scholarships department seemed to be really happy with my work and they evaluated my social service with 10/10, but yesterday they asked for one last favor: to go talk to the new social service guy who'll be supposed to maintain my project, a mid 30's dude who was really pissed off from the beginning because he wasn't even able to deploy the project, he wasn't even able to clone the project from Github. Ok, so I tried to explain to him the tools I used and how the project was structured, but everything I said seemed to piss him even more, so I stopped and had a chat like:
Me: "Look man, do you know or at least have basic concepts of PHP and MVC frameworks?"
Guy: "Yes, but I'm a project manager, not just –despectively– any programmer, and you didn't write proper documentation, it's impossible to deploy your project with the manual you wrote, I cannot work like this".
*We go to their computer and I clone and setup the project in 3 minutes.
Guy: "Yes, but I still don't know how the project works, I need everything documented. If I have to change something, I don't know where to look.
Me: "Man, that's why asked you about knowing PHP MVC frameworks".
Guy: "I cannot work like this, nothing is documented, I don't even know what's that software you're using *points at Sublime Text*. Or tell me, can you arrive at a place where they expect you to work with something you don't know and they have no documentation?"
*At this point he was really pissed
Me: "Well... Dealing with non-documented software is what I do for a living"
Guy: "I don't know what companies you've worked for, probably not big ones..."
Me: "Well, I actually work for *I mention one of the biggest music apps in the country*"
*Guy ironically laughs
When I gave my feedback to the lady in charge of the department, I told her that this guy was really pissed off at how things were done and that I wasn't so sure of him being capable of maintaining the system. She told me not to worry, that the guy became a well known asshole in the office only after a few days, and that she'll probably have to find something else for him to do. It'd be hilarious if this guy ends up capturing scholarships in the system I made.4 -
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 -
I have seen it. They say it doesn't exist; just a story we tell our children so that their innocence does not lead them down into a nightmarish adulthood from which there is no salvation. But the evil lives. So vile that were you to look inside its soul, all you would find is a terrible desperation for suffering. To cause it. To revel in it. To bathe in the tears of those it considers less than human and feed off the emotional detritus.
It was 2009. The financial crisis. I was one of the lucky, having found refuge in a large company right before the jobs dried up. General IT: system administration, documentation, project management, telephony, software training, second level help desk. No software development, but with a two-year-old at home and Ph.D.s lining up outside the local Olive Garden whenever a help wanted sign was posted, I grabbed the health insurance and entered into darkness.
The Thing did not need to hunt it's prey. A manager title with 21 reports brought it new opportunities for fresh meat by the hour. But I was special. I resisted. I needed to know my place.
My first mistake was incomprehension. I did not understand the Thing's lust to be right at all costs. I was reviewing some documentation it had brought forth from its bowels. I mentioned that two spaces were being used between sentences. That proportional type made that unnecessary. It insisted, I was wrong. It insisted that Microsoft itself, the purveyor of all good technical writing, required two spaces. I opened the Microsoft Manual of Style for Technical Publications that it demanded its staff use and showed it that the spec was one space. It was livid. I was a problem.
From that point on my work life became exponentially more wretched. I was given three Outlook calendars to maintain: one with my schedule, one with the team's schedule and one with the Thing's schedule. Every time I had an appointment, I was to triple schedule it. If I was going to be away from my desk for more than 15 minutes triple schedule. Triple schedule my lunch, vacations, phone conferences.
Whenever it held a meeting, I and a colleague would be taken off mission critical IT projects to set tables with name tents and to serve as greeters as attendees arrived.
I was called into its crypt to be told never to say anything in a meeting unless I told the Thing beforehand what I was going to say. Naive, I mentioned that I often don't know what I will say as it is often in reply to someone else. Of course the response was that I should not say anything.
I would get emails 10-20 times a day asking about a single project. I would regularly complete work that was needed to be completed ASAP, only to have the Thing rake me over the coals for not completing it a week later. And upon resending the emails proving I notified it of the work being competed, disparaged at length a second time for not sending repeated notifications of the competed work.
I would have to sit in two-hour meetings to watch it type. Literally watch it try to create cogent thoughts. In silence.
I received horrendous annual reviews. At one, it created a development plan that stated a colleague would begin giving me lessons on the proper ways to socially interact with personnel. I pointed out to HR that this violated privacy concerns and would make the business liable in many areas, not least of which would be placing a help desk person in the role of defining proper business practice. HR made the Thing remove this from my review. She started planning to remove me.
I had given a short technical training to a group of personnel months earlier. Called into its tomb I was informed that feedback surveys on my talk were disturbing. One person stated that they did not think I was funny. Another wrote that I made an offensive statement. That person did not say what the offensive statement was. Just that I had said something he or she didn't like.
The Thing interviewed the training attendees. Gathered facts. Held three inquest-like meetings where multiple directors peppered me with questions trying to get me to confess to my offensiveness. In the end the request to fire me was brought to the man who ran the business at the time. The statement on high: "Humor is a subjective thing. Please tell This to be sensitive to that."
The Thing had failed, but would no doubt redouble its efforts. I had to find a new job. I sent hundreds of resumes. Talked to dozens of recruiters. But there were no jobs. And I had a family. And the wolf was at the door.
So I didn't say a word to the creature. For six months. Silence. At one group meeting it shrieked at me "what are you smirking at? If you've got something to say then say it!" I just shrugged. For my salvation was revealed. The Thing could not stand to be ignored. And at the end of my penance I was transferred to another group: Software Development.
I am one with the Force. The Force is with me. I am one with the Force. The Force is with me.4 -
I have got a new director at work. My previous director had to retire already, the man was already feeling it and he had been on the institution for more than 35 years....I am 30, so this tells you how much the man has been there.
This new dude.....has the presence of a Caterprie (Pokemon) or an Oompa Loompa. In contrast, the previous director felt like a 4 star General (never been in the presence of a 5 star since those occurrences are world war rare) but I had respected that man so much and loved working with him. I really did loved my boss, he was stern and professional, but kind and friendly to his staff, fiercely protective, no one took advantage of I.T while he was there, he would literally fight for us and took our word before anything else. The man was, well, a true man. A true leader.
He took a chance in putting me as the head of my department, but he had faith in me, and coached me and trained me as much as he could. Had the requirement for his position not been a masters he himself told me that he would have loved to make me his successor, even when I would constantly tell him that I was scared shitless of the work he did and the amount of things he did for the institution, to me this is a very laaaaaaaaarge cowboy hat to fill (this is Texas, he wore a hat, the saying is normally "shoes to fill", but fuck it)
This new guys looks away when the other managers are speaking to him. He constantly interrupts us. He constantly tells us about how the other institution in which he was (rival might I add) does X or Y, its fucking annoying to the point that me and the other managers have a drinking game, for every time he references his old institution we drink one beer over the weekend. It is Saturday night and I am 36 in in total (this is my favorite part of it tho) and it is just annoying.
His train of thought makes no sense to me:
"This application, where did you buy it? we tried purchasing one on Y when I was still there but found none"
Me: "Well, since it was a new government mandate and had nowhere to go we had to develop it in house"
Him: "We had tried to purchase what you guys had but found no place that sold it, so why didn't you try purchasing it?"
Me:.....well, because it was brand new, purchase it from where? We also don't like dealing with vendors that manage these sorts of things because every new requirement takes them weeks to produce on very high budgets, historically, my department has only had maintenance fees for the software that we have and even those applications crap themselves all the time and they take weeks to answer back to us.
Him: So you decided to develop it in house instead? we would never do that! back at y we purchased everything our engineers never really developed anything!
Me: Well then, what is the purpose of having engineers if they are not going to actually develop an application?
Him: IF there is something out there that is better then why should you reinvent the wheel?
Me: For this one I did not reinvent the wheel, I am not talking about creating a programming language from scratch, but how does custom solutions that specifically feed the needs of the institution to be produced otherwise? The department has developers for a reason, because they have very specific needs in here that can only come from a team of developers that are in house satisfying those needs.
Him: Well our engineers never had to do that. Sure projects sometimes had to put on holds because the vendor was busy, but such is the nature of development
Me: No it is not, the nature of development is to create things, it is one thing for my team to go through bugs and software considerations, it is another for me to not provide a service because some random company is taking two weeks on a $300 dllr an hour contract to put a simple checkbox on a form. If a project fails the board is not going to care that some vendor is not doing their job, they are just going to blame me, if that is the case then I would much rather the blame be actually mine than some sucky third party "developer" also, your engineers where not even engineers, they were people with a degree that purchased things, that's it, please do not compare them to my guys or refer them as engineers in front of me, they are not.
Him: Well, maybe.
MAYBE?!! motherfucker I did not kill myself learning the ins and outs of architecture and software engineering on my own time after my fucking bachelors in C.S for your codeless background ass to tell me MAYBE. My word IS the fucking WORD here, not yours. Fuck me I really dislike this dude's management practices.
The shitty part? He is not a bad person, he is not a bad dude that is out to get us, just a simple minded moron with no place as a leader.
I know leaders, I know what a leader is, this is not one.10 -
I was engaged as a contractor to help a major bank convert its servers from physical to virtual. It was 2010, when virtual was starting to eclipse physical. The consulting firm the bank hired to oversee the project had already decided that the conversions would be performed by a piece of software made by another company with whom the consulting firm was in bed.
I was brought in as a Linux expert, and told to, "make it work." The selected software, I found out without a lot of effort or exposure, eats shit. With whip cream. Part of the plan was to, "right-size" filesystems down to new desired sizes, and we found out that was one of the many things it could not do. Also, it required root SSH access to the server being converted. Just garbage.
I was very frustrated by the imposition of this terrible software, and started to butt heads with the consulting firm's project manager assigned to our team. Finally, during project planning meetings, I put together a P2V solution made with a customized Linux Rescue CD, perl, rsync, and LVM.
The selected software took about 45 minutes to do an initial conversion to the VM, and about 25 minutes to do a subsequent sync, which was part of the plan, for the final sync before cutover.
The tool I built took about 5 minutes to do the initial conversion, and about 30-45 seconds to do the final sync, and was able to satisfy every business requirement the selected software was unable to meet, and about which the consultants just shrugged.
The project manager got wind of this, and tried to get them to release my contract. He told management what I had built, against his instructions. They did not release my contract. They hired more people and assigned them to me to help build this tool.
They traveled to me and we refined it down to a simple portable ISO that remained in use as the default method for Linux for years after I left.
Fast forward to 2015. I'm interviewing for the position I have now, and one of the guys on the tech screen call says he worked for the same bank later and used that tool I wrote, and loved it. I think it was his endorsement that pushed me over and got me an offer for $15K more than I asked for.4 -
The more depressed you get over the current state of software is how you know you made it.When you start making your own opinions and say"wow these people are full of shit"
Primary example, the web development overblown bullshit. Fuck me dude, you really don't need that full featured react, vue, angular framework to make sense of shit. You are going over the top for fucking ajax functionality and state management that you could do by yourself without needing to learn a full framework, by the time you finish learning react you probably would have been better served with standard vanilla af JS and server side rendering.
Our world is full of fads and many talented people that perpetrate them. Its fine, it is a the nature of the beast. But a lot...A LOT of software is very POORLY written. And adding levels of abstraction over a very broken paradigm (web in this case) does and will not make it better.
Basically I am fucking hating being a web developer and want to go back to a time in which we cared about how much memory consumption our applications made as well as not worrying about the fucking frontend having the ability to implement machine learning.
I want to run sublime.exe and being sure that it is a native application to my system and not using a fucking contained web browser to implement my fucking text editor. With 20mb of ram at most instead of 500mb WTF.
I knew I made it when I could read comments on Hacker news and reddit and say "this idiot is full of shit", I knew I made it when I would sigh heavily at the idea of having another project rather than having a fan girl attitude towards it.
I knew I made it when people writing about software development meant shit to me rather than the wonder of what the fuck they were talking about.
I knew I made it when getting laid was more important to me than fucking around with code.
pussy > code
Fuck you.13 -
I've caught the efficiency bug.
I recently started a minimum wage job to get my life back in order after a failed 2 year project (post mortem: next time bring more cash for a longer runway)
I've noticed this thing I do at every job, where I see inefficiency and I think "how can I use technology to automate myself out of this job?"
My first ever application was in C++ for college (a BASIC interpreter) and it's been so long I've since forgotten the language.
But after a while every language starts to look like every other language, and you start to wonder if maybe the reason you never seriously went anywhere as a programmer was because you never really were cut out for it.
Code monkey, sure. Programmer? Dunno, maybe I just suffer from imposter syndrome.
So a few years back I worked at a retail chain. Nothing as big as walmart, but they have well over 10k store locations. They had two IBM handscanners per store, old grungy ugly things, and one of these machines would inevitably be broken, lost or in need of upgrade/replacement about once a year, per location. District manager, who I hit it off with, and made a point of building report with, told me they were paying something like $1500 a piece.
After a programming dry spell, I picked up 'coding' with MIT app inventor. Built a 'mostly complete' inventory management app over the course of a month, and waited for the right time.
The day of a big store audit, (and the day before a multi-regional meeting), I made sure I was in-store at the same time as my district manager, so he could 'stumble upon' me working, scanning in and pricing items into the app.
Naturally he asked about it, and I had the numbers, the print outs, and the app itself to show him. He seemed impressed by what amounted to a code monkeys 'non-code' solution for a problem they had.
Long story short, he does what I expected, runs it by the other regionals and middle executives at the meeting, and six months later they had invested in a full blown in house app, cutting IBM out of the mix I presume.
From what I understand they now use the app throughout the entire store chain.
So if you work at IBM, sorry, that contract you lost for handscanners at 10k+ stores? Yeah that was my fault (and MIT app inventor).
They say software is 'eating the world' but it really goes to show, for a lot of 'almost coders' and 'code monkeys' half our problem is dealing with setup and platform boilerplate. I think in the future that a lot of jobs are either going to be created or destroyed thanks to better 'low code' solutions, and it seems to be a big potential future market.
In the mean while I've realized, while working on side projects, that maybe I can do this after all, and taken up Kotlin. I want to do a couple of apps for efficiency and store tracking at my current employer to see if I'm capable and not just an mit app-inventor codemonkey after all.
I'm hoping, by demonstrating what I can do, I can use that as a springboard into an internal programming position at my current gig (which seems to be a company thats moving towards a more tech oriented approach to efficiency and management). Also watching money walk out the door due to inefficiency kinda pisses me off, and the thought of fixing those issues sounds really interesting. At the end of the day I just like learning new technologies, and maybe this is all just an excuse to pick up something new after spending so long on less serious work.
I still have a ways to go, but the prospect of working on B2B, and being able to offer technological solutions to common and recurring business needs excites the hell out of me..as cringy and over-repeated as that may sound.5 -
I started to work in a new project for a house architect, basically a management system for his studio. Well, guess what? Twenty years ago he programmed some sort of software using BASIC, and of course that means he knows exactly how software works!
Worst kind of stakeholder, like going to the doctor and telling them how to diagnose, because you used a thermostat once.3 -
Let me tell you how shit flies in Aerospace&Defense companies in certain place in on earth
1. Your dev. PC is isolated from the internet. You can not download any software/library etc directly. "Legal" way takes literally days and you must all effort for it to work. I will not discuss the details of legal way but it is not asking IT team to download it for you, you do it yourself.
2. You use an archaic requirement standard that is somehow used by all other similar companies too. These companies f*ck each other in the arse when they are working on projects together(hiding details from each other which is necessary most of the times etc.) but they were kind to each other when it came to share shitty req. standard.
3. When you try to switch to new requirement standard, you waste weeks only to amend the old one, because everyone is using old one for all projects, so changing it would upset old guards in the company(which are people works in same project for 10 years, no personal development)
4. You came 1 minutes late, you fill the "minutely permission" form.
5. You already work long hours per day and they remove your small breaks during day, because developers use those breaks longer than intended(I wonder what might be the reason...)
6. A technology can not be adopted into current projects even it has objective advantages proven many times in the outer world, because old guards(developers), IT team and configuration management guys(poor man's dev ops role sometimes) can not change their ways.
I hate this shit...6 -
I just lost faith in the entire management team of the company I'm working for.
Context: A mid sized company with
- a software engineering departmant consisting of several teams working on a variety of products and projects.
- a project management department with a bunch of project managers that mostly don't know shit about software development or technical details of the products created by engineering.
Project management is unhappy about the fact that software engineering practically never sticks to the plan regarding cost, time and function that was made at the very beginning of the project. Oh really? Since when does waterfall project management work well? As such they worked out a great idea how to improve the situation: They're going to implement *Shopfloor Management*!
Ever heared about Shopfloor Management? Probably not, because it is meant for improving repetitive workflows like assembly line work. In a nutshell it works by collecting key figures, detecting deviation in these numbers and performing targeted optimization of identified problem areas. Of course, there is more to Shopfloor Management, but that refers largely to the way the process just described is to be carried out (using visualisation boards, treating the employee well, let them solve the actual problem instead of management, and so on...). In any case, this process is not useful for highly complex and hard-to-predict workflows like software development.
That's like trying to improve a book author's output by measuring lines of text per day and fixing deviations in observed numbers with a wrench.
Why the hell don't they simply implement something proven like Scrum? Probably because they're affraid of losing control, affraid of self managed employees, affraid of the day everybody realizes that certain management layers are useless overhead that don't help in generating value but only bloat.
Fun times ahead!8 -
No, I do not wish to work on your Scrum-managed project.
I do not wish to contribute to the Taylorism of my profession.
I do not wish to be an interchangeable cog in your software sausage machine.
I do not wish to be tracked by some pointless metrics like a call-centre worker.
I do not wish to bust my tight, cute ass to sprint after some idiotic management request that could have been factored in earlier.
I do not wish to obtain some piss-ant qualification that "authorises" me to do my job.
I do not wish to be party to your lie that technical debt will be avoided by refactoring---whatever the cost.
I do not wish to contribute to the death of software engineering to have it replaced by software development.
Agile? Sure. I can pick up the phone and talk to the client, users and fellow devs. After all, that's what it FUCKING MEANS. Communi-fucking-cation.
See that burndown chart? See your anus? Know what's happening next?
Fuck Scrum and every fucking bottom-feeder that is scamming a living by promoting it. You're killing this business.
Hugs and kisses,
Platypus15 -
The situation right now:
Our client: full of legacy desktop solutions that always ran inside a VPN, but wanting to modernize the system and migrate to be hosted in the cloud.
Our first project with them: Frontend built with Angular, backend in a serverless model, all with GraphQL and heavily tested to assure quality. The system is mostly an internal software for management, but the backed may receive data from an App.
The problem: all management users have weak passwords (like "12345", "password", or their first name).
The solution: restrict our system to be accessible only inside the VPN
The new problem: how the mobile app will send data to our backend?
The new solution: Let's duplicate the backend, one public and the other private. The public one will accept only a few GraphQL operations.
------
This could be avoided if the passwords weren't so easily deductible12 -
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 -
Job Interview for a CTO role for a premium employer, a big law firm.
All is going well, I am telling them about my years of experience doing complex software integrations in business environments. Talking CRM/ERP, project management and development with external service providers. I tell them I want a salary of 100k and they nod in silence.
Then out of the blue one of the three stakeholders/managers leans over for a final question:
"Soo, we have this really big IT problem and if you would happen to know a solution to it, you would really prove your worth: I have these 10k+ E-Mails in my Outlook folder which doubles as an archive and Outlook keeps getting slower all the time. What can we do?"6 -
Just need to get this off my chest. Started a new job 3 weeks ago at a company that has been around ~18 years, it is only recently that they have started to grow more rapidly. I was brought in under the guise that they wanted to embrace change and better practices and so said I was up for the challenge.
In my 2nd week I was asked to produce a document on tackling the technical debt and an approach to software development in the future for 3 consultants who were coming in to review the development practices of the company on behalf of the private equity firm who has taken a major stake in the company. I wrote the document trying to be factual about the current state and where I wanted to go, key points being:
Currently a tightly coupled monolith with little separation of concerns (73 projects in one solution but you have to build two other solutions to get it to build because there are direct references.).
Little to no adherence to SOLID principles.
No automated testing whatsoever.
Libraries all directly referenced using the file system rather than Nuget.
I set out a plan which said we needed to introduce TDD, breaking dependencies, splitting libraries into separate projects with nuget packages. Start adhering to SOLID principles, looking at breaking the project down into smaller services using the strangler pattern etc. After submitting what I had written to be part of a larger document I was told that it had been tweaked as they felt it was too negative. I asked to see the master document and it turns out they had completely excluded it.
I’ve had open and frank discussions with the dev team who to me have espoused that previously they have tried to do better, tackle technical debt etc but have struggled to get management to allow them. All in all a fairly poor culture. They seem almost resigned to their fate.
In my first 2 weeks I was told to get myself acquainted and to settle myself in. I started looking at the code and was quite shocked at how poorly written a lot of it was and in discussions with my manager have been critical of the code base and quite passionate and opinionated about the changes I want to see.
Then on Friday, the end of my third week, I was invited to a meeting for a catch up. The first thing I was told was that they felt I was being too openly critical in the office and whether I was a good fit for the company, essentially a stay or go ultimatum. I’ve asked for the weekend to think about it.
I’ve been a little rocked by it being so quickly asked if I was a good fit for the company and it got my back up. I told them that I was a good fit but for me to stay I want to see a commitment to changes, they told me that they had commitments to deliver new features and that we might be able to do it at some point in the future but for now I just needed to crack on.
Ordinarily I would just walk but I’ve recently started the process to adopt kids and changing jobs right now would blow that out the water. At the same time I’m passionate about what I do and having a high standards, I’m not going to be silenced for being critical but maybe I will try and tackle it in a different way. I think my biggest issue is that my boss who was previously a Senior Developer (my current position) has worked at the company for 12 years and it is his only job, so when I’m being critical it’s most likely criticising code he wrote. I find it hard to have the respect of a boss who I had to teach what a unit test was and how to write one. It makes it hard to preach good standards when by all accounts they don’t see the problems.
Just wondering if anyone has suggestions or experience that might help me tackle this situation?12 -
Let me share a piece of advice to entry level devs that are getting ready for job interviews that I wish someone gave to me when I was first looking for work straight out of school. Do not focus making yourself look good to this company by trying to make your resume flashy or trying to oversell yourself. Although its important to present yourself sure, but it should not be the foundation for you to base your interview goals around. Rather focus on the company itself. Find out whether the company itself uses modern technology,practices and upholds to project management and the software development cycle, find out how they work,communicate and develop as a team. Simply put focus on whether they are worth working for instead of looking like your worth being hired. Can they collaborate,communicate and solve problems efficiently. Otherwise you may end up getting hired and hating your job. Just a thought and some advice on my own experiences. Hope it helps someone.3
-
i'm feeling so sick right now.
PM invited team for today to present his "vision": "<name of our component>: what it is and what it is not".
but it didn't make sense and showed that he hadn't understood the problem at all. the whole architecture made no sense given the problems that shall be solved. his architecture diagrams missed some essential parts that were actually the giant weak points of his concept. his pseudocode, that should exemplify interactions between components, didn't address the complexity of required interactions at all. it's like he expects some magic to happen and has no fucking clue about the requirements (but acts like it), even though he is the manager of this software project.
and when devs ask really interesting questions that fundamentally question his concept, discussions lead to nowhere and questions are not answered. at some point he literally said "there is no such thing as <name of our component>, i still have to find this out"
really!? after one and a half year, since you sold the idea for this component to upper management, and after half a year of development, you still can't tell what it is what we actually want to build? are you fucking serious?!
at some point in discussion he said that these questions need to be answered but that "there's no time left", and he ended the meeting. although there was still half an hour of meeting time left.
i'm so fucking sick of this, i hate everything right now. i can't listen to this bullshit any longer. in discussions, he contradicts himself all the time, it is so fucking surreal i'm starting to feel like i'm insane.
it makes me really sad and tired. i don't want to care about this shit any longer.14 -
I'm coming off a lengthy staff augmentation assignment awful enough that I feel like I need to be rehabilitated to convince myself that I even want to be a software developer.
They needed someone who does .NET. It turns out what they meant was someone to copy and paste massive amounts of code that their EA calls a "framework." Just copy and paste this entire repo, make a whole ton of tweaks that for whatever reason never make their way back into the "template," and then make a few edits for some specific functionality. And then repeat. And repeat. Over a dozen times.
The code is unbelievable. Everything is stacked into giant classes that inherit from each other. There's no dependency inversion. The classes have default constructors with a comment "for unit testing" and then the "real" code uses a different one.
It's full of projects, classes, and methods with weird names that don't do anything. The class and method names sound like they mean something but don't. So after a dozen times I tried to refactor, and the EA threw a hissy fit. Deleting dead code, reducing three levels of inheritance to a simple class, and renaming stuff to indicate what it does are all violations of "standards." I had to go back to the template and start over.
This guy actually recorded a video of himself giving developers instructions on how to copy and paste his awful code.
Then he randomly invents new "standards." A class that reads messages from a queue and processes them shouldn't process them anymore. It should read them and put them in another queue, and then we add more complication by reading from that queue. The reason? We might want to use the original queue for something else one day. I'm pretty sure rewriting working code to meet requirements no one has is as close as you can get to the opposite of Agile.
I fixed some major bugs during my refactor, and missed one the second time after I started over. So stuff actually broke in production because I took points off the board and "fixed" what worked to add back in dead code, variables that aren't used, etc.
In the process, I asked the EA how he wanted me to do this stuff, because I know that he makes up "standards" on the fly and whatever I do may or may not be what he was imagining. We had a tight deadline and I didn't really have time to guess, read his mind, get it wrong, and start over. So we scheduled an hour for him to show me what he wanted.
He said it would take fifteen minutes. He used the first fifteen insisting that he would not explain what he wanted, and besides he didn't remember how all of the code he wrote worked anyway so I would just have to spend more time studying his masterpiece and stepping through it in the debugger.
Being accountable to my team, I insisted that we needed to spend the scheduled hour on him actually explaining what he wanted. He started yelling and hung up. I had to explain to management that I could figure out how to make his "framework" work, but it would take longer and there was no guarantee that when it was done it would magically converge on whatever he was imagining. We totally blew that deadline.
When the .NET work was done, I got sucked into another part of the same project where they were writing massive 500 line SQL stored procedures that no one could understand. They would write a dozen before sending any to QA, then find out that there was a scenario or two not accounted for, and rewrite them all. And repeat. And repeat. Eventually it consisted of, one again, copying and pasting existing procedures into new ones.
At one point one dev asked me to help him test his procedure. I said sure, tell me the scenarios for which I needed to test. He didn't know. My question was the equivalent of asking, "Tell me what you think your code does," and he couldn't answer it. If the guy who wrote it doesn't know what it does right after he wrote it and you certainly can't tell by reading it, and there's dozens of these procedures, all the same but slightly different, how is anyone ever going to read them in a month or a year? What happens when someone needs to change them? What happens when someone finds another defect, and there are going to be a ton of them?
It's a nightmare. Why interview me with all sorts of questions about my dev skills if the plan is to have me copy and paste stuff and carefully avoid applying anything that I know?
The people are all nice except for their evil XEB (Xenophobe Expert Beginner) EA who has no business writing a line of code, ever, and certainly shouldn't be reviewing it.
I've tried to keep my sanity by answering stackoverflow questions once in a while and sometimes turning evil things I was forced to do into constructive blog posts to which I cannot link to preserve my anonymity. I feel like I've taken a six-month detour from software development to shovel crap. Never again. Lesson learned. Next time they're not interviewing me. I'm interviewing them. I'm a professional.9 -
Fuck. I can't take this shit anymore.
There was a project where we had to implement third-party system for government agency processes management. For some reason, probably because my work is cheap for my boss, the task was assigned to me. Just as a reminder, I'm a .NET Dev. Zero experience in server management. Zero experience in external services implementation.
Anyway, system producent, also an government agency, got angry, becasue they can only earn money on implementation. They have to give the software to other agencies for free. Because of that I've got client program, incomplete documentation and broken scripts for database creation. It took me 2 months to get it all to work but at the end client was happy, my boss got paid and I've got 500 PLN (~130 USD) bonus.
Everything was fine for a while, but after a month server has started freezing everyday, some time before 7 am. The only way I found to make it work again was to restore snapshot made everyday at 10 pm. For a month I was waking up earlier and restored snapshot, and after that my boss took it upon himself. I tried few times to find a bug and fix it, but to no effect. Even person with much more experience with it tried to help but also couldn't find anything.
My solution? Copy all the data and configuration, create new machine, copy everything and check if the problem persists. If not, kill old server. Client won't even notice. But nooooooooo... It would cost my boss a bit of money and I'd need to work on it and he can't let it be, because I'm the only developer working on his flagship product. He'd rather wake up everyday and restore snapshot. Okay, as you wish.
And today, finally, everything went downhill. Snapshot wasn't created, server froze, backup can't be created. Nothing can be done. Client is furious, because they have had reported this problem and a few times restoration was too late and they couldn't work. No one knows how to fix it, I'm not working today (I'm still studying and am available only 2 days) and situation is really shitty.
BUT SURE. ITS BETTER TO RESTORE SERVER EVERYDAY THAN JUST FUCKING FIX IT.
Oh, also, there's no staging or any other real backup. We have snapshots for each day and that's that. Boss' order. Why do I even care...7 -
i genuinely like programming. it's like solving logical puzzles for me, challenges on a smaller or bigger scale, and this is fun.
i always feel this when working on something on my own, i.e. a full stack project where i take care of everything.
but i'm so sick and tired of corporate software development.
i'm tired of scrum, all these scrum meetings, it feels like they are sucking my life energy away. if at least i had the feeling that i work in a team where everybody contributes, the team work is nice and also project management is aligned.
i'm tired of having too many different tasks in too many different areas or projects and never having the feeling to be able to really concentrate on one thing, to be able to do a job well enough so that i'm content with it.
i'm tired of this feeling that what i'm working on is not meaningful. the feeling that my team is not part of a bigger story where everyone contributes their part and where there is a sense of productive collaboration between teams. the feeling that mismanagement will result in a lot of money being burned, because of work being thrown away or becoming irrelevant, or because of miscommunication, making promises that can impossibly be delivered on.
this feeling that i cannot really improve or fix the ship we are sailing with, but rather being handed a bucket and being told to constantly remove the leaking water and put it back in the ocean, but always at multiple sites of the ship all at once.
i'm tired of being the only female dev and altogether feeling so different from the rest of the team, feeling that i do not belong there.
even though i need to make a living, i just can't imagine anymore to spend so much of my lifetime for something that makes me feel so bad...7 -
While this wasn't technically a real client, it's still one of the most insane requests I've ever had.
I chose to specialize in software engineering for the last year and a half of my degree, which meant a lot of subjects were based around teamwork, proper engineering practises, accessibility, agile methods, basically a lot of stuff to get us ready to work in a proper corporate dev environment. One of our subjects was all about project management, and the semester-long coursework project (that was in lieu of a final exam) was to develop a real project for a real client. And, very very smartly, the professors set up a meeting with the clients so that the clients could tell us what they wanted with sixty-odd students providing enough questions. They basically wanted a management service for their day-center along with an app for the people there. One of the optional requirements was a text chat. Personally not something I'm super interested in doing but whatever, it's a group project, I'll do my part.
The actual development of the project was an absolute nightmare, but that's a story for another day. All I'll say is that seven juniors with zero experience in the framework we chose does not make a balanced dev team.
Anyway, like three months into the four-month project we've got a somewhat functional program, we just need to get the server side part running and are working our asses off (some more than others) when the client comes in and says that 'hey, nice app, nobody else has added the chat yet, but could you do voice recognition okay thanks?'.
Fucking.
Voice.
Recognition.
This was a fucking basic-ass management app with the most complicated task being 'make it look pretty' and 'hook up a DB to an API' and they want us to add voice recognition after sitting on their ass for three months??? The entire team collectively flipped its shit the second they were out of earshot. The client would not take no for an answer, the professor simply told us that they asked for it and it was up to us whether we delivered or not. Someone working on the frontend had the genius idea of 'just get them to use google voice recognition' so we added the how-to in the manual and ticked the requirement box.
What amazes me about all that is how the client probably had no idea that their new last-minute request was even a problem for us, let alone it being in a completely different ballpark in terms of implementing from scratch.8 -
In school we had to create a project using Java and SQL we created a library management software.
In India a teacher from other school comes to check your projects and allot marks. (They just take a viva and give a marks)
Out of the whole class he asked me to present my project (they usually don't look at it ) and he checked each and every file asked a lot of questions.
Viva went on for 45 mins (usually 10-15 mins) and when the whole class is looking at you like what did they make.
Yeah that made me feel like a badass dev.1 -
I honestly don’t know how my coworker has been a software engineer for 10+ years, doesn’t know and or understand a single Linux command, only works from windows... also doesn’t understand the concept of proper version control ... thinks zip folders is completely sufficient... AND doesn’t understand why someone would need to refactor something... says it works... I’m like you have a 2000 line function... yes it works, but it’s not testable nor reusable... he says he’s tested it (at his desk) ... and so what if it’s not reuseable... he’ll copy and paste and rewrite something for another project. “That’s what we are paid todo” .... HORSESHIT!!!
I don’t understand how the system hasn’t weeded people out like this.... and he blindly doesn’t want to take criticism, or learn.. saying his Years of experience proves he knows what he’s doing... bullshit
I’m just happy management is on my side.20 -
I finally fucking made it!
Or well, I had a thorough kick in my behind and things kinda fell into place in the end :-D
I dropped out of my non-tech education way too late and almost a decade ago. While I was busy nagging myself about shit, a friend of mine got me an interview for a tech support position and I nailed it, I've been messing with computers since '95 so it comes easy.
For a while I just went with it, started feeling better about myself, moved up from part time to semi to full time, started getting responsibilities. During my time I have had responsibility for every piece of hardware or software we had to deal with. I brushed up documentation, streamlined processes, handled big projects and then passed it on to 'juniors' - people pass through support departments fast I guess.
Anyway, I picked up rexx, PowerShell and brushed up on bash and windows shell scripting so when it felt like there wasn't much left I wanted to optimize that I could easily do with scripting I asked my boss for a programming course and free hands to use it to optimize workflows.
So after talking to programmer friends, you guys and doing some research I settled on C# for it's broad application spectrum and ease of entry.
Some years have passed since. A colleague and I built an application to act as portal for optimizations and went on to automate AD management, varius ssh/ftp jobs and backend jobs with high manual failure rate, hell, towards the end I turned in a hobby project that earned myself in 10 times in saved hours across the organization. I felt pretty good about my skills and decided I'd start looking for something with some more challenge.
A year passed with not much action, in part because I got comfy and didn't send out many applications. Then budget cuts happened half a year ago and our Branch's IT got cut bad - myself included.
I got an outplacement thing with some consultant firm as part of the goodbye package and that was just hold - got control of my CV, hit LinkedIn and got absolutely swarmed by recruiters and companies looking for developers!
So here I am today, working on an AspX webapp with C# backend, living the hell of a codebase left behind by someone with no wish to document or follow any kind of coding standards and you know what? I absolutely fucking love it!
So if you're out there and in doubt, do some competence mapping, find a nice CV template, update your LinkedIn - lots of sources for that available and go search, the truth is out there! -
Hey, it's 2023.
If your component isn't written in TypeScript, I'm not using it :)
"TypeScript is overly complicated!!!" why, because it pointed out everything wrong in your JS code?
"TypeScript is not flexible!!!" why, because it makes you not rely on fragile "only possible in javascript" patterns?
"TypeScript isn't needed!!!" why, because you've never worked on a project with more than 100 lines of code where dependency management and clean code policies were implemented?
god just stop with the JavaScript purist BS, you aren't going to win this battle, and it's even worse because not only are you injuring everyone in the software community, you're injuring your own productivity and skillset
actually, you know what, fine. just use pure JS and HTML implementations. see you in 10 years when i'm retired and you are still running around in circles wondering why the world has left you behind25 -
I walk into the kickoff meeting today. The first part of this project had 5 developers and a project manager. Former project manager handled communication and sheltered us from bullshit. We built an amazing piece of software in a very short time. Customers were so amazed that they decided to reboot the project, boost the funding by several million, and let us go again. They specifically requested the same team.
Now the team looks like this: the neediest tester guy, a UX lady that doesn't have any UX background, an agile "visionary", a project manager that doesn't understand how development works, a solutions architect, 3 COTS platform specialists, a devops specialist, and an account lead. They have booked all kinds of workshops and other shit to kick things off.
So development capacity is only 60% of what it was. Management ratio was 1:5 before. Now the management ratio is 9:3. The new project manager thinks developers should be on more customer calls and responding to all customer emails during sprints. We already built this system and devops pipelines end to end. The COTS people, solutions architect, or the UX person can't program. They want us to magically convert this custom application into one based on COTS. What we need to do is make the rest of the business processes that we omitted, integrate known feedback, rework the backend, build better automated testing, improve logging and reporting, add another actor to the system, add a different authentication method, and basically work through the massive backlog.
How do they think this is going to work? Do they think we can download a custom engineered enterprise grade software system from Microsoft and double click all the way to customer satisfaction? The licenses alone are too much for the customer on an ongoing cost basis. I guess we can discuss it during the agile team-building weekend at some remote lake that the team "visionary" has set up. For the sake of fuck.
Like development isn't hard enough. Hire two more developers and lose all of the dead weight. Get a project manager that won't let the trivial shit roll down on us. What the fuck.5 -
Just deployed version 0.0.1 of my holiday project to production.
It's a pie "attached" to some speakers, mounted below the kitchen cubord. So far it only runs a spotify connect on it and you're able to play music there while cooking/cleaning.
I'd actually like it to also be able to just play regular music, either from a smartphone or a computer in the network. (It's connected by wifi to our lan). Any advice on what software I could install on it to achive that? i'd prefere to enable it for devices on the lan and have bluetouth dissabled, but I'm actually not sure if that is even possible. So yeah any advice to that? Or any other things you'd install on it?
I know, that I need to do some "cable management" back there :P10 -
This day I have received the most glorious news in e-pistolary form. For some years, I was suffering in support of a client who was, well, insufferable. My presence there paralleled the divine comedy in both essence and fact.
I opened the missive, expecting another plea to bail them out of whatever clusterfuck they found themselves in. Instead, what I found was something truly magical.
"Hey Human,
I hope this finds you well. I'm not sure if you remember a few years back, we were trying to decide between IBM Cloud and AWS. Well, after years of battling FF*, we're finally moving ahead with AWS. He failed one too many times to deliver anything visibly. After you left, there was no one left he could use to steal credit, ideas, and work.
FF is still pushing to have them use IBM cloud as a "warm backup" in the event "AWS fails." We will see where that goes.
I figured you'd like to know; you were the void in the wilderness for a long time. I don't want to think about how much time we could have saved if we had just listened.
PeeEm**"
This event represents a personal victory, albeit belated, over a few peoples' absurd amount of privilege. Towards the end, I was vicious about my contestation to the insanity of adopting a desperate hedge attempt-as-cloud offering from a failing company. Some examples:
// cloud 'strategy meeting'
Moi: What cloud platform are we looking at using?
FF: We're looking at IBM cloud and AWS as a second.
Moi: Why is that? I understand you're obligated to rep your offering first, but that decision doesn't seem to have the customer's best interest at heart.
FF: IBM cloud is a market leader; AWS isn't as good.
Moi: I see. I mean, that's the tech equivalent of the company's fleet management considering monkeys on tricycles as a strong competitor to service trucks, but I get what you mean.
// steering meeting
Director: Who can we look to as an example? Who is currently using the IBM cloud?
Moi: No one; they account for a single-digit portion of the actual cloud market. Their long game to sell you a "Hybrid Cloud," which means put some front end payload in a CDN, and buy n-frame units of IBM z servers for the DC with IBM gateway appliances acting as connective tissue. So it's not the cloud at all, really.
Director: How does it compare in cost?
Moi: It's generally 40% more expensive than other clouds, and it only goes higher as you option their software.
Director: What about Watson? I hear Watson is good?
Moi: It's a brand name. Most of the "Watson" product is just a facade on top of FOSS products like Spark, Hadoop, Elasticsearch, etc.
Director: Those were words. They sounded good. FF say it's good tho so we'll believe him because we're from the same city.
Moi: *deletes Director from LinkedIn*
Moral of the story: Never trust a vendor that only recommends their products.
*FF = FatFuck - an embarrassingly rotund individual whose girth is roughly equivalent to his height. He shit his way into an IBM architect position in his mid-20s purely due to winning the visa lottery. He had fake hair glued to his head for his wedding to hide his male pattern baldness; his arrange-married wife undoubtedly cries herself to sleep after sex.
**PeeEm - the then project manager, now portfolio manager of some satellite projects. An overall decent human being, capable.9 -
Just another big rant story full of WTFs and completely true.
The company I work for atm is like the landlord for a big german city. We build houses and flats and rent them to normal people, just that we want to be very cheap and most nearly all our tenants are jobless.
So the company hired a lot of software-dev-companies to manage everything.
The company I want to talk about is "ABI...", a 40-man big software company. ABI sold us different software, e.g. a datawarehouse for our ERP System they "invented" for 300K or the software we talk about today: a document management system. It has workflows, a 100 year-save archive system, a history feature etc.
The software itself, called ELO (you can google it if you want) is a component based software in which every company that is a "partner" can develop things into, like ABI did for our company.
Since 2013 we pay ABI 150€ / hour (most of the time it feels like 300€ / hour, because if you want something done from a dev from ABI you first have to talk to the project manager of him and of course pay him too). They did thousand of hours in all that years for my company.
In 2017 they started to talk about a module in ELO called Invoice-Module. With that you can manage all your paper invoices digital, like scan that piece of paper, then OCR it, then fill formular data, add data and at the end you can send it to the ERP system automatically and we can pay the invoice automatically. "Digitization" is the key word.
After 1.5 years of project planning and a 3 month test phase, we talked to them and decided to go live at 01.01.2019. We are talking about already ~ 200 hours planning and work just from ABI for this (do the math. No. Please dont...).
I joined my actual company in October 2018 and I should "just overview" the project a bit, I mean, hey, they planned it since 1.5 years - how bad can it be, right?
In the first week of 2019 we found 25 bugs and users reporting around 50 feature requests, around 30 of them of such high need that they can't do their daily work with the invoices like they did before without ELO.
In the first three weeks of 2019 we where around 70 bugs deep, 20 of them fixed, with nearly 70 feature requests, 5 done. Around 10 bugs where so high, that the complete system would not work any more if they dont get fixed.
Want examples?
- Delete a Invoice (right click -> delete, no super deep hiding menu), and the server crashed until someone restarts it.
- missing dropdown of tax rate, everything was 19% (in germany 99,9% of all invoices are 19%, 7% or 0%).
But the biggest thing was, that the complete webservice send to ERP wasn't even finished in the code.
So that means we had around 600 invoices to pay with nearly 300.000€ of cash in the first 3 weeks and we couldn't even pay 1 cent - as a urban company!
Shortly after receiving and starting to discussing this high prio request with ABI the project manager of my assigned dev told me he will be gone the next day. He is getting married. And honeymoon. 1 Week. So: Wish him luck, when will his replacement here?
Deep breath.
Deep breath.
There was no replacement. They just had 1 developer. As a 40-people-software-house they had exactly one developer which knows ELO, which they sold to A LOT of companies.
He came back, 1 week gone, we asked for a meeting, they told us "oh, he is now in other ELO projects planned, we can offer you time from him in 4 weeks earliest".
To cut a long story short (it's to late for that, right?) we fought around 3 month with ABI to even rescue this project in any thinkable way. The solution mid February was, that I (software dev) would visit crash courses in ELO to be the second developer ABI didnt had, even without working for ABI....
Now its may and we decided to cut strings with ABI in ELO and switch to a new company who knows ELO. There where around 10 meetings on CEO-level to make this a "good" cut and not a bad cut, because we can't afford to scare them (think about the 300K tool they sold us...).
01.06.2019 we should start with the new company. 2 days before I found out, by accident, that there was a password on the project file on the server for one of the ELO services. I called my boss and my CEO. No one knows anything about it. I found out, that ABI sneaked into this folder, while working on another thing a week ago, and set this password to lock us out. OF OUR OWN FCKING FILE.
Without this password we are not able to fix any bug, develop any feature or even change an image within ELO, regardless, that we paid thausend of hours for that.
When we asked ABI about this, his CEO told us, it is "their property" and they will not remove it.
When I asked my CEO about it, they told me to do nothing, we can't scare them, we need them for the 300K tool.
No punt.
No finish.
Just the project file with a password still there today6 -
Starting new game development project.
Coder:" ok guys, I think that this time we have to focus much more on sprints management and documentation"
Designer:"Ye, this time we should use better scrum software, like jira or youtrack"
Artist:"but Asana has the unicorns when you complete a task"4 -
For the Project Management exam, my university requires us to install a program on our PERSONAL laptops that is meant to take over the control over the entire system during the exam, monitor any “suspicious activities”. The software is closed-source (it’s called Schoolyear Exams), does god-knows-what in the background, takes the control over the entire system and can be summoned through any Chromium web browser.
Don’t get me wrong, I get that you want to make sure nobody is cheating - but at this point, I’d rather write it with pen and paper. Or just provide us with computers for the time of exam.
I decided to whip out my old laptop instead, installed a Windows 10 on a separate SSD, and installed that software on it.
Also it’s very amusing that this software is also mandatory for the Linux exam… But the program can’t run on Linux (it’s Windows and Mac only and doesn’t even support M1 chips).
EDIT: typos11 -
I worked on a game jam last year, and for the first time I managed to finish a full software project that wasn't for a job or university. It was really fun to work on, and seeing my vision come to life, even if compromises had to be made, as well as applying all the programming and project management knowledge I'd picked up until then was an experience unlike anything I'd had before.
The community aspect was great too, everybody shared and discussed each other's games and were super friendly and encouraging. -
dev, ~boring
This is either a shower thought or a sober weed thought, not really sure which, but I've given some serious consideration to "team composition" and "working condition" as a facet of employment, particularly in regard to how they translate into hiring decisions and team composition.
I've put together a number of teams over the years, and in almost every case I've had to abide by an assemblage of pre-defined contexts that dictated the terms of the team working arrangement:
1. a team structure dictated to me
2. a working temporality scheme dictated to me
3. a geographic region in which I was allowed to hire
4. a headcount, position tuple I was required to abide by
I've come to regard these structures as weaknesses. It's a bit like the project management triangle in which you choose 1-2 from a list of inadequate options. Sometimes this is grounded in business reality, but more often than not it's because the people surrounding the decisions thrive on risk mitigation frameworks that become trickle down failure as they impose themselves on all aspects of the business regardless of compatibility.
At the moment, I'm in another startup that I have significantly more control over and again have found my partners discussing the imposition of structure and framework around how, where, why, who and what work people do before contact with any action. My mind is screaming at me to pull the cord, as much as I hate the expression. This stems from a single thought:
"Hierarchy and structure should arise from an understanding of a problem domain"
As engineers we develop processes based on logic; it's our job, it's what we do. Logic operates on data derived from from experiments, so in the absence of the real we perform thought experiments that attempt to reveal some fundamental fact we can use to make a determination.
In this instance we can ask ourselves the question, "what works?" The question can have a number contexts: people, effort required, time, pay, need, skills, regulation, schedule. These things in isolation all have a relative importance ( a weight ), and they can relatively expose limits of mutual exclusivity (pay > budget, skills < need, schedule < (people * time/effort)). The pre-imposed frameworks in that light are just generic attempts to abstract away those concerns based on pre-existing knowledge. There's a chance they're fine, and just generally misunderstood or misapplied; there's also a chance they're insufficient in the face of change.
Fictional entities like the "A Team," comprise a group of humans whose skills are mutually compatible, and achieve synergy by random chance. Since real life doesn't work on movie/comic book logic, it's easy to dismiss the seed of possibility there, that an organic structure can naturally evolve to function beyond its basic parts due to a natural compatibility that wasn't necessarily statistically quantifiable (par-entropic).
I'm definitely not proposing that, nor do I subscribe to the 10x ninja founders are ideal theory. Moreso, this line of reasoning leads me to the thought that team composition can be grown organically based on an acceptance of a few observed truths about shipping products:
1. demand is constant
2. skills can either be bought or developed
3. the requirement for skills grows linearly
4. hierarchy limits the potential for flexibility
5. a team's technically proficiency over time should lead to a non-linear relationship relationship between headcount and growth
Given that, I can devise a heuristic, organic framework for growing a team:
- Don't impose reporting structure before it has value (you don't have to flatten a hierarchy that doesn't exist)
- crush silos before they arise
- Identify needed skills based on objectives
- base salary projections on need, not available capital
- Hire to fill skills gap, be open to training since you have to pay for it either way
- Timelines should always account for skills gap and training efforts
- Assume churn will happen based on team dynamics
- Where someone is doesn't matter so long as it's legal. Time zones are only a problem if you make them one.
- Understand that the needs of a team are relative to a given project, so cookie cutter team composition and project management won't work in software
- Accept that failure is always a risk
- operate with the assumption that teams that are skilled, empowered and motivated are more likely to succeed.
- Culture fit is a per team thing, if the team hates each other they won't work well no matter how much time and money you throw at it
Last thing isn't derived from the train of thought, just things I feel are true:
- Training and headcount is an investment that grows linearly over time, but can have exponential value. Retain people, not services.
- "you build it, you run it" will result in happier customers, faster pivoting. Don't adopt an application maintenance strategy
/rant2 -
12 years in the industry. For significant part of that time, I've juggled leadership roles, project management, customer facing role, testing, hardware debugging, marketing .......
Oh, I also code.
My designation is still a software engineer.2 -
I need some advice here... This will be a long one, please bear with me.
First, some background:
I'm a senior level developer working in a company that primarily doesn't produce software like most fast paced companies. Lots of legacy code, old processes, etc. It's very slow and bureaucratic to say the least, and much of the management and lead engineering talent subscribes to the very old school way of managing projects (commit up front, fixed budget, deliver or else...), but they let us use agile to run our team, so long as we meet our commitments (!!). We are also largely populated by people who aren't really software engineers but who do software work, so being one myself I'm actually a fish out of water... Our lead engineer is one of these people who doesn't understand software engineering and is very types when it comes to managing a project.
That being said, we have this project we've been working for a while and we've been churning on it for the better part of two years - with multiple changes in mediocre contribution to development along the way (mainly due to development talent being hard to secure from other projects). The application hasn't really been given the chance to have its core architecture developed to be really robust and elegant, in favor of "just making things work" in order to satisfy fake deliverables to give the customer.
This has led us to have to settle for a rickety architecture and sloppy technical debt that we can't take the time to properly fix because it doesn't (in the mind of the lead engineer - who isn't a software engineer mind you) deliver visible value. He's constantly changing his mind on what he wants to see working and functional, he zones out during sprint planning, tries to work stories not on the sprint backlog on the side, and doesn't let our product owner do her job. He's holding us to commitments we made in January and he's not listening when the team says we don't think we can deliver on what's left by the end of the year. He thinks it's reasonable to expect us to deliver and he's brushing us off.
We have a functional product now, but it's not very useful yet and still has some usability issues. It's still missing features, which we're being put under pressure to get implemented (even half-assed) by the end of the year.
TL;DR
Should I stand up for what I know is the right way to write software and push for something more stable sometime next year or settle for a "patch job" that we *might* deliver that will most definitely be buggy and be harder to maintain going forward? I feel like I'm fighting an uphill battle in trying to write good quality code in lieu of faster results and I just can't get behind settling for crap just because.9 -
ughh, studying about various software project management methodologies and lifecycles is so boring.
every different model looks similar, saying :
you got an idea?
- check weather its needed and if its practically / financially possible
- get investment and resources,
- design,develop, test, release
- repeat .
why name them waterfall or spiral or rad or agile or shit?
and we know how project go in reality: "fuck its 2 days to release and 5 features left? push to prod, make breaking features, leave the tests and release"7 -
First course of "Software Engineering", it is full of project management ...
I'm so disappointed ...4 -
I applied as a full-stack dev at a private company, they offered me the Project Manager role instead, I took the offer and after 1yr they gave me a choice to choose between staying as a Project Manager or switching to being a Software Engineer/System Analyst. I took the SoftEng position because project management isn’t my career choice for now.
Now people saying I not knowingly chose to be demoted. Is it a bad choice?10 -
So a few weeks back guy I used to work with contacts me for some dev work on a UK project he is working on, it's the Thursday and they need the thing the coming Monday. I tell him it's totally impossible, and it was so he asks what can done and how much, as well as how much for the entire project.
I stipulate exactly what can be done, with exclusions and say 7.5k and them mail over a detailed quote for 30k for everything.
I get told it's all fine, I must go ahead. I get through a bit more than expected by the Monday, but they still needed something to demo and I set I can get enough for demo in place by Thursday.
They demo to business and money and all that and everyone is happy and tell me to finish up along with some changes, and I don't even adjust the price as it was more work they wanted outside of the original spec.
Get to probably 80% done and they say we need to pause they need to look over other feedback.
Next thing, the PM come back, no they were never actually happy with the quote and they found some other guy willing to do the entire thing for 7.5k and they willing to only give me that for the code I have written so far. Cunts.
Anyway, he tries to take some blame for it, even though I know it's BS and says he will pay in another 7.5k from his share if I am willing and we call it quits.
This people, is why I don't freelance.
I feel sorry for this new kid, he clearly under quoted, and yes I am expensive, but with decades experience having worked on international projects for one of the largest digital asset management firms, my countries leading fintech dev house and now the lead developer for my countries largest insurance software dev house, you damn fucking strait my free time comes at a premium, as you are getting top fucking quality, 100% tested, high performing code.
They can go fuck an entire flock of ducks when they come back after this half ling fucks up the diamond I coded up for them.
Even funnier, they a UK based company, so for them this was a 1.5k project. Cheap cunts.3 -
The stand-in for the person who normally runs the daily standup meeting (who is currently on leave) asked me today in front of everyone in standup if I've updated my notes. Fuck. Off.
So, I decided to be cheeky and add a comment to the daily standup notes automation task in our project management software that we should just include all of the recipients of the daily status update email in our standup meeting every morning, this way we don't require a OneNote space to update as well as an email.
If they tell me that's not the purpose of standup, then hopefully someone will realise what they've been doing all along.
Let's see how that goes lmao.2 -
Division of my 8 hour work day:
30% Answering Emails
20% Attending Meetings
40% Troubleshooting Bugs
30% Support Calls
10% Project Management
90% Software Development3 -
Have you become a replacement tool doing manual and menial IT work to bridge the lack of a proper IT process and streamlining?
I've worked for such companies and it's super annoying.. companies that zip projects to Google Drive instead of using a VCS.. not even having a drawing board or proper office chairs.. not even a cafeteria.. companies using Subversion instead of Git, no project management systems nor software, no JIRA, shit written down on printed paper,.. the list goes on.
A nightmare, really. Like developing in the 90's..3 -
You know what's the worst in doing software?
being assigned that dreadful project, that's doomed and cursed just from the start. Nobody dared to try or touch it for 7 years, because it's destined to fail. You will never get the resources to do it properly, all the constrains are just against you. Even as the requirements bars are lowered and lowered you barely make it. You keep testing that shit with QA for like 8 months past schedule. Then before release some core changes need to be done. It passes QA, but you somehow now it's just a ticking time bomb. It will just crumble and fall somewhere out there, if somebody dares to use that shit for real.
And so it goes.
Bug reports coming in.1 -
So another story about college and stupid team assignments that I have to be responsible for dealing with.
So we had an assignment in operating systems 1 course, it was about memory management and we are a team of 3. Then came the time when we should discuss this assignment with the TA and that day I had to stay all night finishing a project in software engineering (literally giving us a description of a big project because that's what the course teaches And I had to finish it in one all nighter alone because my teammates just gave up).
When the discussion time came I was really tired and then the TA asks me something really simple and I say it but then she tells me that I'm wrong so I wondered a bit and then said no what I said was right! She then asks my teammate (who we are supposed to be good friends) "did he say the right thing?" And his answer is a definitive "NO he's wrong" and then he starts to say the right answer which I swear I said the same but in a different way so I start to say again that I was right and say that I said that just a different way and she took that as an insult and said that I'm shouting at her and being disrespectful to her.
When we finished I asked my friend if he heard me say it wrong and he said "I'm sorry but I didn't even hear what you said and I was afraid" WHAT THE FUCK, he just said that I was wrong to please her and make her feel like she is right and I had to be the wrong one even though I said it right but NOoo her pride is more important
All this was last semester and the second semester just started today and I go into operating system 2 and guess what? The TA got her doctorate and is now the professor for OS 2 when she doesn't even understand anything.
Really FUCK the academic system it feels like it is a grind more than actually gaining mastery of a subject.2 -
MENTORS - MY STORY (Part II)
The next mentor was my first boss at my previous job:
2.- Manager EA
So, I got new in the job, I had a previous experience in other company, but it was no good. I learned a lot about code, but almost nothing about the industry (project management, how to handle requirements, etc.) So in this new job all I knew was the code and the structure of the enterprise system they were using (which is why the hired me).
EA was BRILLIANT. This guy was the Manager at the IT department (Software Development, Technology and IT Support) and he was all over everything, not missing a beat on what was going on and the best part? He was not annoying, he knew how to handle teams, times, estimations, resources.
Did the team mess something up? He was the first in line taking the bullets.
Was the team being sieged by users? He was there attending them to avoid us being disturbed.
Did the team accomplished something good? He was behind, taking no credit and letting us be the stars.
If leadership was a sport this guy was Michael Jordan + Ronaldo Nazario, all in one.
He knew all the technical details of our systems, and our platforms (Server Architectures both software and hardware, network topology, languages being used, etc, etc). So I was SHOCKED when I learned he had no formation in IT or Computer Science. He was an economist, and walked his way up in the company, department from department until he got the job as IT Manager.
From that I learned that if you wanna do things right, all you need is the will of improving yourself and enough effort.
One of the first lessons he taught me: "Do your work in a way that you can go on holidays without anyone having to call you on the phone."
And for me those are words to live by. Up to that point I thought that if people needed to call me or needed me, I was important, and that lessons made me see I was completely wrong.
He also thought me this, which became my mantra ever since:
LEARN, TEACH AND DELEGATE.
Thank you master EA for your knowledge.
PART I: https://devrant.com/rants/1483428/...1 -
I came up with what I considered to be a brilliant approach to a festering internal knowledge management problem using a third-party SaaS. I rolled it out and it was very popular. Weeks later, after my profile had become the "linchpin" by which hundreds of other employees had joined the service, I was told that a female employee (yes, gender is important to this story) had produced a proposal for a more in-house solution that used a different company's software and that I would be on the team to roll it out. I thought it was a great idea and I deferred to her on pretty much everything.
Months after that I was accused, by several other female managers, of trying to take over the whole leadership of the project just because of one minor suggestion I had proposed. One day, after a lengthy interrogation about their take on my emails on the matter (lacking only the bright, hot spotlight in my eyes) I was booted off the project and the woman who had proposed the project was promoted. She then proceeded to lord it over on me and treat me like crap.
This type of thing was a general pattern within the company that amounted to a form of a reverse discrimination "policy" (unwritten). The effect was that the ratio of men to women in upper management was not equal but completely flipped. Way more women than men had upper management positions and higher pay.
In their eyes, the ends (women broke through the glass ceiling) justified the means (discrimination and bullying) which I guess is good and "equal", again in their eyes, in terms of the overall perception modern feminism has about men needing a comeuppance.
But in the context of HR's stated policy on equality, meaning 1:1 men and women in position of power and pay and a non-threatening work environment for all, which we all (men and women) were forced to sign every year, it was an utter fail as far as the math and intimidation went.2 -
monday.com: our manager has been pushing for it for weeks. We barely got any time with the demo before it expired and the company took forever to get licenses.
Now that we're on it ... this thing sucks ass. It hijacks all the browser keyboard shortcuts. You can't use Ctrl+F or Ctrl+L .. you can't even right click.
This is the worst project management software I've ever seen. It's amazingly even worse that Jira. I wish we had just gone with Redmine. It's free and not garbage7 -
We basically don't unit test at work. I write some tests for my code and honest to God people complain I'm wasting time saying a test bed and manual tests are good enough. We don't write test beds for about half of our production code and rely on integration tests for the rest. We only test release builds which have been symbol stripped, I get handed a crash report with no stack trace that I'm unable to reproduce and expected to stay late to fix it for some arbitrary internal deadline.
I've since moved to R&D where basically I'm left to do my own thing so it's better.
We don't project manage. Project leads take time estimates and double them so management might cut them some slack. This doesn't matter because management made up time estimates before the project started. Last project I was on had a timeline of 3 months and took a year.
We have released broken products. Not that any of the above really matters, our software products have made about 50k revenue in 2 years. There are 6 people on software. Fortunately hardware has made about 3 mill. That said our hardware customers are getting frustrated with us as we keep fucking up, shipping broken products and missing deadlines.
I've been working there about a year and a half and will be looking for a job at the end of the current project.
I joined devRant about when I was most pissed off with my job, my rant frequency has definitely gone down since I moved over to R&D. -
A loooong time ago...
I've started my first serious job as a developer. I was young yet enthusiastic as well as a kind of a greenhorn. First time working in a business, working with a team full of experienced full-lowered ultra-seniors which were waiting to teach me the everything about software engineering.
Kind of.
Beside one senior which was the team lead as well there were two other devs. One of them was very experienced and a pretty nice guy, I could ask him anytime and he would sit down with me a give me advice. I've learned a lot of him.
Fast forward three months (yes, three months).
I was not that full kind of greenhorn anymore and people started to give me serious tasks. I had some experience in doing deployments and stuff from my other job as a sysadmin before so I was soon known as the "deployment guy", setting up deployments for our projects the right way and monitoring as well as executing them. But as it should be in every good team we had to share our knowledge so one can be on vacation or something and another colleague was able to do the task as well.
So now we come to the other teammate. The one I was not talking about till now. And that for a reason.
He was very nice too and had a couple of years as a dev on his CV, but...yeah...like...
When I switched some production systems to Linux he had to learn something about Linux. Everytime he encountered an error message he turned around and asked me how to fix it. Even. For. The. Simplest. Error. He. Could. Google. Up.
I mean okay, when one's new to a system it's not that easy, but when you have an error message which prints out THE SOLUTION FOR THE ERROR and he asks me how to fix it...excuse me?
This happened over 30 times.
A. Week.
Later on I had to introduce him to the deployment workflow for a project, so he could eventually deploy the staging environment and the production environment by hisself.
I introduced him. Not for 10 minutes. I explained him the whole workflow and the very main techniques and tools used for like two hours. Every then and when I stopped and asked him if he had any questions. He had'nt! Wonderful!
Haha. Oh no.
So he had to do his first production deployment. I sat by his side to monitor everything. He did well. One or two questions but he did well.
The same when he did his second prod deploy. Everythings fine.
And then. It. Frikkin. Begins.
I was working on the project, did some changes to the code. Okay, deploy it to dev, time for testing.
Hm.
Error checking out git. Okay, awkward. Got to investigate...
On the dev server were some files changed. Strange. The repo was all up to date. But these changes seemed newer because they were fixing at least one bug I was working on.
This doubles the strangeness.
I want over to my colleague's desk.
I asked him about any recent changes to the codebase.
"Yeah, there was a bug you were working on right? But the ticket was open like two days so I thought I'll fix it"
What the Heck dude, this bug was not critical at all and I had other tasks which were more important. Okay, but what about the changed files?
"Oh yeah, I could not remember the exact deployment steps (hint from the author: I wrote them down into our internal Wiki, he wrote them done by hisself when introducing him and after all it's two frikkin commands), so I uploaded them via FTP"
"Uhm... that's not how we do it buddy. We have to follow the procedure to avoid..."
"The boss said it was fine so I uploaded the changes directly to the production servers. It's so much easier via FTP and not this deployment crap, sorry to say that"
You. Did. What?
I could not resist and asked the boss about this. But this had not Effect at all, was the long-time best-buddy-schmuddy-friend of the boss colleague's father.
So in the end I sat there reverting, committing and deploying.
Yep
It's soooo much harder this deployment crap.
Years later, a long time after I quit the job and moved to another company, I get to know that the colleague now is responsible for technical project management.
Hm.
Project Management.
Karma's a bitch, right? -
!rant
I know this may not be the typical post on Devrant and it may be a little off topic, but I could really use some advice from fellow colleagues here.
The thing is, I just finished engineering school and I got my first job as a software engineer. So far so good. I've never been a natural talent in this field, and I suck at writing code. I find things like architecture, system design, innovation, requirementsspecification, management and business development much more interesting.
These past weeks as a software engineer has been really challenging for me. I seem to be totally "in over my head", and fuck everything up. I can't understand how the code I'm supposed to write works, and can't solve even the simplest of tasks that are assigned to me if they involve any implementation of code, or fiddling with Github or build servers.
Is it normal to feel like this as an engineer with zero experience? Will things get better, or should I just resign or wait to be fired?
What would a natural next step for a software engineer who'd like to move more into business and management be? A MBA? Project management courses?
I hope to get some advice from you guys. Maybe you've felt like this when you started out as well? Anyway, any constructive feedback would be really much appreciated.7 -
This is more of a story than a rant, but it has some rant-ey elements, so whetever...
I work for a pretty big company. Several departments, teams, many different markets...so it's a big orchestration. The programming department (aprox. 5% of all employees) is the core of the whole company, because everybody else uses software we've written...(a bit off topic, the point is there are a lot of people)
So today, I got assigned with a side-project. The project spec arrives, and as I read through it, I start realizing that upper-management whats me to build an app to fire people instead for them. The app is supposed to track salary, connect with Trello (for departments that use it) to track finished tasks, track sick days, work attendence...a lot of stuff, and at the end, if the situation requires, spit out a person that is of least benefit to the company, to be fired...
Now from coding perspective, this will be very interesting and fun to build, but from a moral standpoint, I'm a bit woried...simply because, indirectly, I'm firing those people. Because, the way I tune the the app(specifically the algorithm that weighs the value of an employee to the company) will cause certain people to get fired...
So I'm woried I'm gonna have a small breakdown when the app goes live and I see someone saying goodbye to theie colegues of something similar...heck, the app might even spit out my name some day(I should probably add a tiny if statement somewhere in there :) )
What do you guys think about this, from a moral standpoint? Would you be okay with building something like this?
(Sorry for the long post :/ )8 -
So I'm finally doing the job I was hired to do 2 years ago, with the promise of working 1.5 years ago, and scheduled to work 1 year ago as the project slips about a 1.25 years.
The project is on it's 3.5th year of a 3 year plan and based on the architecture of the project, the project architect started a degree in software architecture 4 years ago. In Latin. When his first language was Japanese and his second was Indian English while this was a US company. And his entire degree was in Lisp, PHP, and html, this project is in C#, and his professional background is in Fortran.
This is a man who is no longer on the project, not allowed to contribute or talk to us about the project, and what little documentation he left us is in Swahili translated from Korean via Google translate from the second year Korean language major exchange student from Russia who got really into meth and Telenovelas.
It is every version of MV* without the M and with every definition of * including some he made up and some that have only been proven to exist via machine learning algorithm written in SQL statements.
This project represents an implementation of the presentation tier of an n-tier application, yet attempts to reimplement the other n-1 tiers in html5 and the dreams of children.
The new lead is a former engineer that couldn't begin coding until he figured out how to map all of his variables to his former cars and girlfriends inclusively and learned his management skills from the big book of micro managers and that one time everyone else in the office was sick but the intern. Who now has a girlfriend whom he works 200 feet from so he isn't 100% thinking with his largest head. At least from observation.
Yet, I still can't bring myself to go be with the whales/become an accountant. -
Agile/Scrum is the worst project management style in software development.
Rather than focusing on delivering a feature or changes on the project, everyday there is always a meeting that you need to attend to, other than the daily huddle. And those meetings are none of your concern or why they needed you there
And my Product Owner and Scrum Master does not know even though how software development cycle works. When you discuss technical details or constraint to them, they either look confused or don’t know what to say and just say “If you need anything, always communicate or approach me” even you already told them the issue.
Or maybe we are doing it wrong. But it is been 5 years when they implement this Agile/Scrum and we are still bad at it.
Just ranting4 -
Salesforce. Although I wasn't involved in the purchase or the implementation, I spent many 100 hour weeks dealing with the crapshoot of an implementation. A large company abused that software to the point of no return. They used that thing for everything, and then they didn't even use it right for the one thing salesforce is good at. So I guess I don't have anything against salesforce itself besides its scalability issues, custom SOQL syntax, user model, and pricing. I'm more upset about the salesforce developers/business owners that decided it was okay to use salesforce for things it was never meant for, like inventory, project management, 3rd party sales team, and so many other things that caused what should have been sub-second queries to take 30 to 60 seconds.
-
We use a open-source business management software (incl. crm, e-commerce, billing, accounting, warehouse, ...) that is highly customizable.
Previously we had "Company A" that customized it for my company. It was very expensive so they hired something to do the same but cheaper & inhouse. The codebase that "Company A" has written was terrible (confirmed by CTO & the new colleague").
Then the CFO wanted functionality A. Colleague said that this will take 2 weeks to implement. One week later, it was no longer needed & functionality B was now mandatory. Rinse & Repeat.
The CFO: "Why is nothing ever gonna get finished" or "why is the quality so bad?"
So they hired another person for the same position. This person has more experience so it costs them a lot more... And suddenly, everything works well
They contacted a few months later a consultant that analyzed the company. The consultant asked (for good reason) why such a small company has 2 people maintaining the in-house BM software. And suddenly, they wanted to get rid of the worst person. <enter my previous rant>
He is thrown out. Now the head of Operations wants to remove that software because it was not "sexy" enough (her words). So they introduced a glorified spreadsheet with less functionality. That new colleague was offered to take the lead on that project... And thus he fled to another company.
That project failed and now everyone is fired... And they hired back "Company A" to maintain that BM project.4 -
A few months back I was talking with our web team and we determined a ticketing software would be useful for clients to submit website updates. Rather than request we buy one, because we constantly get told to stop spending, I spent my free time building it out. We tested it and decided it was ready to present to management.
Management tells us that clients aren't going to use something like this (4 fields and optional file upload). The project sits in a repo untouched for some months.
<Time passes>
Company-wide email come in announcing our brand new ticket system for clients to submit issues about our software. Then a second email comes in to me asking why the web team never thought to do something like that and went on about how useful it would be if we had something similar. I link them to the one I built and my notes from our previous meeting.
Manager who told me clients would never use this: Let's talk about this next week and see if we can get people to use it.
It's been 3 weeks and the meeting has been rescheduled 5 times.1 -
Actual question: Tell me which project management software you use and what you hate about it. What do you like about it, if anything?15
-
I was brought into my new position as part of an transformation of waterfall to agile methodology.
We are now running 4 while projects and need to restart the remaining 29 projects using agile principles. The business management type people love agile, but somehow the people inside the current waterfall practices doesn't.
They are afraid their silo work will either expand or not exist thus making it hard to transform the company. Also the company have been subjected to the dead sea effect.
Therfore, the project that is currently in the space of transformation is making my blood boil because people just ain't passionate enough about software.
Either you craft software, or, well you sit and suckle other's money. People suckling should please grow up and start venturing beyond there cozy 9 to 5 and transform to be a professional software doer rather than a BA, DEV, IT GUY.
YOU BASTARDS GET A SHITLOAD OF MONEY AND DON'T DESERVE IT FOR THE EFFORT YOU BRING.
It is your software, own it, be proud of it. Read up to make it better. And as always, the people debugging your code can be a violent psychopath -
This is why we can never have enough software developers
It's true. No matter how many people learn to program, there will never be enough people who know how to program. They don't have to be very good at it either. It is now a required skill.
Minimum wage in first world countries is way above 5$ per hour. A Raspberry PI 3B costs 40$, or at most 1 day of work for the worst paid jobs. And it will run for years, and do routine tasks up to thousands of times faster than any employee. With that, the only excuse that people still do routine tasks, is the inaccessibility of coder time.
Solution: everybody should know how to write code, even at the simplest level.
Blue-collar jobs: they will be obsolete. Many of them already are. The rest are waiting for their turn.
Marketing people - marketing is online. They need to know how to set up proper tracking in JS, how to get atomic data in some form of SQL, how to script some automated adjustments via APIs for ad budgets, etc. Right now they're asking for developers to do that. If they learn to do that, they'll be an independent, valued asset. Employers WILL ask for this as a bonus.
Project Managers - to manage developers, they need to know what they do. They need to know code, they have to know their way around repositories.
QA staff - scripted tests are the best, most efficient tests.
Finance - dropping Excel in favor of R with Markdown, Jupyter Notebooks or whatever, is much more efficient. Customizing / integrating their ERP with external systems is also something they could do if they knew how to code.
Operations / Category Management - most of it would go obsolete with more companies adopting APIs as a way to exchange important information, rather than phone calls and e-mails.
Who would not be replaced or who wouldn't benefit from programming? Innovative artists.
A lot of it might not be now now, but the current generation will see it already in their career.
If we educate people today, without advanced computer skills and some coding, then we are educating future deadbeats.
With all this, all education should include CS. And not just as a mandatory field or something. Make it more accessible, more interesting, more superficial if needed. Go straight to use cases, show its effectiveness in the easiest way possible. Inquisitive minds will fill in the blanks, and everyone else will at least know how to automate a part of their work. -
I've complained about this friend who I help out with a side project before and I don't know how to deal with this anymore.
He decided he wants to send out a free weekly newsletter with content that takes a lot of time to create.
He got burned out from all of the work. I tell him to only do it bi-weekly. Still doesn't listen.
He doesn't work, whereas I have a full-time job, his mom feeds him and does everything for him.
Someone on the newsletter said they didn't receive a newsletter they signed up for and now he's dumping that on me. I refuse to deal with it. I have paid a lot of my own money for the website he uses to post stuff. He knows more about the newsletter software than I do. The least he can do is deal with the people on Discord and the email newsletter issues, because I honestly don't have time. He has a solar generator at his house, so he can work through the power outages we have on a daily basis, I do not.
He keeps wanting to give out free shit to people, whereas I told him this side project needs to start making money to make it worthwhile for me. He's always making excuses that he doesn't have money, blah blah blah. We designed a cool magazine and it's pretty much finished, but now he's stalling with things he needs to do to get it published on Drivethrurpg.
He just hassled me again to check this gmail I made for him to use for the newsletter and this YouTube he wants to start. I told him, no I haven't had time.
The other day I went to his house to hang out, he gave me a taste of his home made ginger beer and I said it's great, but then he went and drank a pint of it without even offering me some, right in my face. His mom came out and asked me an hour later if I wanted tea. These people are weird. Maybe I am weird.
He also doesn't use the project management software I showed him how to use, so I don't know what's going on. And I told him this a couple of times.
Think I should tell this dude that I don't have time to work on this stuff? And how do I do it politely, yet sternly?5 -
About 95% of developer jobs in my country are unevenly split between the administrative and commercial capitals, with an overwhelming majority favouring the commercial capital. I live in the administrative one. Any dev jobs outside both states pay a fraction of what is tenable
Not having much luck with my search, I reluctantly applied for this php role advertised in one of the other states. I wasn't even expecting them to write back cuz the pay is piss poor. it's on site, about 400km away. For some context the salary is 120k but the tfare to and from there is in the neighbourhood of 70 grand
Anyway, the employer wrote back to me on WhatsApp, sending a full stack sample project for me to complete in 36 hours, which frankly, I found pitiful and absurd. Call me entitled, Arrogant, etc. But I didn't anticipate a cv and github like mine, from a company requiring relocation from the capital for a paltry retainer, would demand I complete a sample project. For 120k ffs. I was already making more than that years ago when our inflation hadn't ballooned 30x over
I haven't been able to bring myself to start the project. Not like I know much else to do with my life, I just slipped into a catatonic state shortly after reading it. EVERYBODY I started software with a decade ago, is either outside the country now or earning too much fx to bother with departure. I'm not envious of them, just asking for something decent to get by or not live in penury. Comfortable enough to afford basics without breaking the bank
Shortly after leaving my last workplace, I made a dark joke that: the best ones who leave, get better jobs. The average ones are either retained or land similarly mediocre positions. But the truly incompetent employees wind up in the village, farming
One detail I left out is that this sample project guy is located in the same state as my hometown. In a sense, I made a self fulfilling prophecy
He's going to request I turn in my solution tomorrow but I might just come clean about his sample project catching me off guard. I did an assessment this morning for a coy advertising a senior developer role. 4 segments, not one single one technical /code. Just boring shits about OCEAN, time management, communication. I checked my results when I was done and saw I'd done a previous test with these same guys 5 months ago. I shockingly aced the topics back then but didn't get hired anyway
This time around, almost none of the scores ramped above 501 -
Spends 9 months on the side developing a library for analysis of a specific programming language. No help, entirely my own work. There's various tools built upon this library. Incorporates project management, an effective build system capable of parallel and distributed builds, a packaging system...
Beta release the library. Wait four months. Ask the community for who's been using it so I can get feedback and other comments. Majority of the comments follow a specific pattern.
"You don't support X, how dare you!?"
One, this is free software, pay me if you want specific things.
Two, I'm the only developer of a project usually undertaken by a small team.
Three, yes it does you fucking invalid... Every fucking time someone claims it doesn't support some feature, it's something I've already written and validated. I swear to fucking God users can't find something themselves and instead of checking the Wiki or asking for help, they blindly assume they can't make mistakes and it must be my defect.1 -
First and foremost, students should be carefully taught the logic and mentality behind programming. Most of the time I see that the introductory programming courses waste so much energy in teaching the language itself. So students kinda just get fucked cause many people end up ending the course without having actually gained the "programming perspective".
Stop teaching pointers and lambdas and even leave the object oriented stiff till later. If a student doesn't know why we use a For loop then how can they learn anything else.
I believe once that thing in your brain clicks about programming, everything goes smooth from there... kinda :P
Second of all, and this pertains mainly to the engineering and science disciplines.
We need a fundamental and strong mathematical foundation. And no I don't mean taking fucking double integrals. Teach us Linear Algebra, Graph theory, the properties of matrices, and Probability theory.
One of the things I suffered from most and regret in university is having a weak foundation in math and having to spend more time catching myself up to speed.
It's so annoying reading a paper on a new algorithm or method and feeling like an idiot because I can't understand what magic these people did.
Numerical Methods...
Ok this is more deeper, maybe a 2nd year course.
But this is something we take for granted.
Computers don't magically add and subtract and multiply.
They fuck up.
And it'll bite you in the ass if you're not even aware that the computer we all love so much isn't as perfect as we think
Some hardware knowledge.
Probably a basic embedded systems course with arduinos
just so you can get a feel for how our beautiful software actually makes those electrons go weeeeeeeee
And finally
Practice practice
Projects projects
like honestly
just give me the internet and some projects
Ill learn everything else
Projects are the best motivation
I hate this purely theoretical approach
where we memorize or read code and write these stupid exams
Test what we are capable off
make us do projects that take sleepless nights and litres of coffee
And judge our methods, documentation, team work, and output
Team work skills and tools (VCS, communicating, project management, etc.)
Documentation and Reporting
Properly
:)
maybe even with LaTeX :D
Yeah that's the gist of whats on my mind at the moment regarding an ideal computer science education
At least the foundations
The rest I leave it to the next dude. -
Can I list this experience? Will it look bad?
I am an entry level programmer in a software shop, or whatever they are called. I was given no mentorship on the task I have done. Not even proper documentation and it seems management is passing me around. What I mean by that is that the task I work on no one has ideas about since it seems the last guy who was responsible left. He was a senior though and it seems that I might have been too eager to find a job. Now I am being tasked for things a senior would do but I have the entry pay and knowledge and skill set. 2 months experience...
I am going to design a whole system from scratch and they have not read anything on it. From networking to applications to fees to compliance requirements. Oh the great part is they want it soon, no pressure, but we have to start certification within a tight deadline. This is a great opportunity and maybe a dumpster fire waiting to start. I will gain so much real experience but they are taking a great risk. It seems that is throughout their code and infrastructure though.
I plan to leave after the project. I also will document and hopefully they start reviewing my stuff to catch my incompetence. Not on purpose but from pressure and inexperience, which I hate cause I was excited at first.
I plan to stick the year or until Covid strips work-from-home, cause they are bit “old school”. I will begin my job search as well. I just know I will burn out long term and the money and package is shit.
Do I list them if I leave earlier but finish the project?8 -
I’ve now discovered that management actually decides for themselves what software engineering is. 🧐
It is getting increasingly common that in different architectural groups the decision has already been made… by management…without actually passing through our review… as a little more senior blokes and gals.
Not even a discussion? On the fit?
That leads me to the conclusion, since I consider the management (at least the two or three closest layers) are morons, good at talking but not really knowing anything about what we do (we kind of take stuff and make other stuff from it by using energy and other stuff in HUGE FUCKING FACILITIES AROUND THE PLANET), that even they did not make the decision. It was forced upon them. They did not decide either! Because they can’t! Because they are idiots all of them!
I have not investigated this issue but this is the logical conclusion. Or not.
Recently, for instance, decisions were made to route information flows by some tech. Some new tech. At some place in our eco-system. At a certain time. And, if we were to have reviewed this initiative in our process we would have said:
”Well, I hear you! But we are not going to do that right now because WE ARE IN THE MIDDLE OF THE FUCKING HUGE GLOBAL PROJECT THAT CHANGES PRETTY MUCH FUCKING EVERYTHING AND WE CAN NOT JUST IN THE MIDDLE OF THE FUCKING EXECUTION PROCESS OF THE PROJECT CHANGE THE FOUNDATIONS OF MESSAGE ROUTING BECAUSE WE LACK THE NUMBER OF HUMANS TO DO THE FUCKING JOB. So, we need to take a look at this and to get a better understanding when we can make this happen.”
What is the point of having this step in our organization if it is just pass-through? What is the point? Meetings? Just having meetings? Spending time mastering the organizational skill of administrating meetings? Feeling important? Using big words (holistic being my favourite)?
Below, juniors devs are being hired doing stupid stuff that does not need doing. For months and months.
I believe now that half of the dev staff does not need to be there and three quarters of the team, service, delivery (etc) managers are unnecessary. I mean, the good juniors are going to change jobs soon either way and we are stuck in this vicious cycle where we are not being allowed to be innovative in software engineering. Stability is of the essence here but the rate of our releases are just silly slow. I would say that we are far, far away from any track that leads us to where we want to be. Agile. Innovative. Close to business. Learning. Teaching. Faster. Stability despite response to implementing changing business needs.
And then there are the consultants…
*sigh*4 -
My work had Project Management software before to track tasks and issues, but the new boss wanted to switch to some new support tool. A bit annoying, but no problem.
After decommissioning the old (free) PM software, he decided to put off the new software implementation. Instead, he created a shared g suite inbox that we have to log in to and check for issues. No routing, no priorities, no notes section, no progress tracking, no tasks.
Now I have to give progress updates several times a day on my tasks because there is literally nowhere for me to report my progress. I have no idea what my priorities are since we have literally nowhere that specifies priorities. This is a PM and support nightmare, and as a former SCRUM master I'm about to lose it!6 -
Do you guys still see the relevance of using code freezing instead of just properly managing versions, repositories and branches in a cyclical manner, given how advanced software practices and tools are supposed to be?
To give some context, the company I work for uses the complete trash project management practice of asking teams to work on a sprint basis, but there is still a quarterly milestone and code freeze to commit to and it's where shit hits the fan.
Development teams rush features at the end of the quarter because they had to commit at the very least to a 6 months in advance planning (lol?) and turns out, not being able to design and investigate properly a feature combined with inflexible timelines has high chances to fail. So in the end, features are half-assed and QA has barely any time to test it out thoroughly. Anyways, by the time QA raises some concerns about a few major bugs, it's already code freeze time. But it's cool, we will just include these bug fixes and some new features in the following patches. Some real good symver, mate!
Of course, it sure does not help that teams stopped using submodules because git is too hard apparently, so we are stuck with +10Gb piece of trash monolithic repository and it's hell to manage, especially when fuckfaces merges untested code on the main branches. I can't blame Devops for ragequitting if they do.
To me, it's just some management bullshit and the whole process, IMO, belongs to fucking trash along with a few project managers... but I could always be wrong given my limited insight.
Anyways, I just wanted to discuss this subject because so far I cannot see code freezing being anything else than an outdated waterfall practice to appease investors and high management on timelines.8 -
Unlimited time is impossible... But I don't wanna ramble.
The one thing that I absolutely miss in my kind of work is something that does exist in dozens of flavors and each existence promises to solve some thing...
It's "bug tracker" / "time management" / "ticket management" / "board" / "kanban" or what ever pervert method you prefer software.
I haven't seen a decent one.
I'd think I'd want to build one - it would be definitely an all time consuming effort, since I would be in dire need of specialists.
The thing with nearly all of the solutions is that they lack ... an associative mindset.
Simply put, what we humans can.
The longer a project exists, the more it's housekeeping (guess that's a better word for it) turns into maintenance nightmare.
I remember quite well the joy of puzzling together eg Jira / Bugzilla / ... complex search formulars trying to find the needle in a planet of hay.
If you're read so far and have had similar experiences, think about how nice it would be if you had a mixture of AI and BI doing exactly that.
BI / Business Intelligence to get meaningful statistics is possible, but without AI it's a lot of work.
The AI would need to do several things...
- Match information (eg version XY was released at XY, so each bugreport after XY belongs to version XY and higher if no version matched)
- Tag and categorize (crashed / faulted / fried / ... - tag crash)
- "do the mundane work": ask nicely if the marching / tagging and so on was right, ask for missing info, require feedback etc.
There's a lot I could write more about that topic. But that's the gist. ;) -
Hopefully get out to the public the two projects I have been working on currently. A local focused startup help website and a local focused fillable forms platform.
And hopefully get my first large scale software project kickstarted - A retail management system on a full Feedback Driven Development approach perhaps with the ability to integrate AI and ML later on. -
So some big customers are getting problems for a given software project. The relevant dev team, customer support and I, part of another division of QA, need support from a specific QA team. We work for a multinational company employing above a thousand of people around the world.
None of the members are giving signs of life. Nobody from any QA team answers my emails, slack messages or anything. Management does not seem to care either. Did they suddenly die without my knowledge? I am just trying to do my job and find solutions to problems.
I am an inch close to giving no fucks and start playing video games. lol2 -
A certain person deserves nothing better than the signs of the tires of a full-speed heavy truck tatooed on her face (even though, I admit, it could be an improvement to the overall aesthetic). Especially when she wants to push the office (1 week before the vacations and with no real urgency, while there a tons of other jobs that are way more urgent) to modify one by one some field in the data of 5500 customers only because SHE (and only she) has a bonus, when everything could be solved with a fucking simple sql update and we only need a simple approval for that from the company of the project management software. All of this while she spends the time planning her own vacations in internet, or complaining about EVERYTHING, including the colour of the icons of her pdf reader (30 min complaints about a stupid icon). Responsible my ass.
-
So, have been working for this company for 4 years now as a warehouse associate, but over time they finally realized I can code. I was given the opportunity to work on different projects (even though the first project was a setup for failure but still prevail completing it).
Long story short, next year plan on finishing my bachelor's degree in Software Development. Once I get the degree (or during the process) should I strive to try to work at the:
Tech position (at the current job)
or
Data Analyst department (current job) ,
since I would be the only developer (for data analyst and impressed the team members at my current job,
or
should I try to find another job in software development for a new field when the opportunity come up for a fresh start in just programming and not warehouse associate work?
P. S. Close friends with the Tech department, have high recognition and have done some projects for them. They would love to see me join the team if it happens. When I am not working with the tech department during off season (needs to be approved by management to work on these projects during off season) I am literally cutting a box, wasting my skills and potential in auditing during the season.7 -
i just released my first open source project with effort to make a comprehensible documentation for others to use as well as repetitive refactoring to not embarrass myself.
i am equally excited and knowing no one will care about that.
it is based on my effort to make my companies workflow more effective, knowing well this is just a temporary solution in advance to a professional developed system as opposed to having no system at all. so all of this work will fade into oblivion eventually.
i felt this has been too much work just to be forgotten someday so i cling to my naive hope someone might benefit from that and maybe i get one or three internet points.
in case someone is interested in a free quality management software for document control and access with no real state of art, you might find it interesting to visit my qualitymanagement repo4 -
Sydochen has posted a rant where he is nt really sure why people hate Java, and I decided to publicly post my explanation of this phenomenon, please, from my point of view.
So there is this quite large domain, on which one or two academical studies are built, such as business informatics and applied system engineering which I find extremely interesting and fun, that is called, ironically, SAD. And then there are videos on youtube, by programmers who just can't settle the fuck down. Those videos I am talking about are rants about OOP in general, which, as we all know, is a huge part of studies in the aforementioned domain. What these people are even talking about?
Absolutely obvious, there is no sense in making a software in a linear pattern. Since Bikelsoft has conveniently patched consumers up with GUI based software, the core concept of which is EDP (event driven programming or alternatively, at least OS events queue-ing), the completely functional, linear approach in such environment does not make much sense in terms of the maintainability of the software. Uhm, raise your hand if you ever tried to linearly build a complex GUI system in a single function call on GTK, which does allow you to disregard any responsibility separation pattern of SAD, such as long loved MVC...
Additionally, OOP is mandatory in business because it does allow us to mount abstraction levels and encapsulate actual dataflow behind them, which, of course, lowers the costs of the development.
What happy programmers are talking about usually is the complexity of the task of doing the OOP right in the sense of an overflow of straight composition classes (that do nothing but forward data from lower to upper abstraction levels and vice versa) and the situation of responsibility chain break (this is when a class from lower level directly!! notifies a class of a higher level about something ignoring the fact that there is a chain of other classes between them). And that's it. These guys also do vouch for functional programming, and it's a completely different argument, and there is no reason not to do it in algorithmical, implementational part of the project, of course, but yeah...
So where does Java kick in you think?
Well, guess what language popularized programming in general and OOP in particular. Java is doing a lot of things in a modern way. Of course, if it's 1995 outside *lenny face*. Yeah, fuck AOT, fuck memory management responsibility, all to the maximum towards solving the real applicative tasks.
Have you ever tried to learn to apply Text Watchers in Android with Java? Then you know about inline overloading and inline abstract class implementation. This is not right. This reduces readability and reusability.
Have you ever used Volley on Android? Newbies to Android programming surely should have. Quite verbose boilerplate in google docs, huh?
Have you seen intents? The Android API is, little said, messy with all the support libs and Context class ancestors. Remember how many times the language has helped you to properly orient in all of this hierarchy, when overloading method declaration requires you to use 2 lines instead of 1. Too verbose, too hesitant, distracting - that's what the lang and the api is. Fucking toString() is hilarious. Reference comparison is unintuitive. Obviously poor practices are not banned. Ancient tools. Import hell. Slow evolution.
C# has ripped Java off like an utter cunt, yet it's a piece of cake to maintain a solid patternization and structure, and keep your code clean and readable. Yet, Cs6 already was okay featuring optionally nullable fields and safe optional dereferencing, while we get finally get lambda expressions in J8, in 20-fucking-14.
Java did good back then, but when we joke about dumb indian developers, they are coding it in Java. So yeah.
To sum up, it's easy to make code unreadable with Java, and Java is a tool with which developers usually disregard the patterns of SAD. -
I am so fucking tired being the handy man that solves every problem that arises from a disgraceful project management.
I was minding my own business when a project was handed to me two weeks before the production rollout. In this project they needed a ton of integrations with the destination system and nothing was done.
So naturally I started to ask where were the integration specifications and what infrastructure was supporting the project so I could start development right away.
There were no DEV nor QA infrastructure, only production, and no one could give me a straight answer about what exactly they needed to do. That alone was a huge red flag but the kicker was that I could only start when the software provider development team finished the configurations of the system that they wanted to integrate with. After reviewing the due dates I only had 4 days to implement the integrations before the rollout.
During those 4 days I was constantly on the phone trying to get enough information to implement everything in time. After an immeasurable effort I managed to implement every critical component for the rollout.
So fucking tired of this shit.......1 -
I like the people I work with although they are very shit, I get paid a lot and I mostly enjoy the company but..
Our scrum implementation is incredibly fucked so much so that it is not even close to scrum but our scrum master doesn't know scrum and no one else cares so we do everything fucked.
Our prs are roughly 60 file hangers at a time, we only complete 50% of our work each sprint because the stories are so fucked up, we have no testers at all, team lead insists on creating sql table designs but doesn't understand normalisation so our tables often hold 3 or 4 sets of data types just jammed in.
Our software sits broken for months on end until someone notices (pre release), our architecture is garbage or practically non existent. Our front end apps that only I know the technology have approaches dictated by team lead that has no clue of the language or framework.
Our front end app is now about 50% tech debt because project management is so ineffectual and approaches are constantly changing. For instance we used to use view models for domain transfer objects... Now we use database entities, so there is no commonality between models but the system used to have shared features relying on that..sour roles and permissions are fucked since a role is a page regardless of the pages functionality so there is no ability to toggle features, but even though I know the design is fucked I still had to implement after hours of trying to convince team lead of it. Fast forward a few months and it's a huge cluster fuck to enforce.
We have no automated testing of any sort or manual testing in place.
I know of a few security vulnerabilities I can nuke our databases with but it got ignored.
Pr reviews are obviously a nightmare since they're so big.
I just tried to talk to scrum master again about story creation since any story involving front end ui as an aspect of it is crammed in under one pointed story as sub tasks, essentially throwing away any ability to calculate velocity. Been here a year now and the scrum master doesn't know what I mean by velocity... Her entire job is scrum master.
So anyway I am thinking about leaving because I like being a developer and it is slowly making me give up on doing things to a high standard and I have no chance of improving things, but at the same time the pay is great and I like the people. -
I’m really getting fed up with the situation I am in!
I was brought in as a development lead, which in my eyes and from the sound of it leading on the technical delivery, inspiring and leading technical development decisions and generally leading my team (one additional dev) in the delivery of work items and user stories which the PM or Business analyst produces..
Then it “evolved” into what felt more like a development manager where I was reporting to senior management on KPIs and stuff, I sucked it up and did it.
Then they brought in two new people which they call application specialists. These people spend all their time managing existing off the shelf applications, communicating with the vendor, running user groups where they work with our users on moving the product forward and planning the configuration and enablement of new functionality.
Because they are “developing” the application (in the same way a child develops, or the same way a story line develops and evolves) they fall under me..
So now I spend a split amount of time developing software and also managing what I can only explain as project managers, product owners...
Oh but then it gets better!! Now they want me(as well as our info sec lead and our infrastructure lead) to be a kind of all round delivery lead, gauging the requirements of a project, reporting in its risks to senior management, resource planning, everything a PM does! And also be the technical person delivering these projects!
Honestly, it’s seriously starting to take the fucking piss!
I am a technical programmer, a pretty good one if I say so myself, the developer reporting to me is good but needs hand holding which I am ok with! But would never be able to deliver an element of a product by himself in line with what we expect in quality of code..
Why would anyone think you take a person built and only interested in doing a technical role and make then a generic all round manager of a project??
I know why they did it! It’s because there are other managers in our department paid the same “level” as me, but because of their management responsibility’s , I however feel I am paid this much for my technical experience and abilities, thy are just blanket covering everyone the same at this level.
You would never get a manager at this salary scale with the technical skills they need, and you would never get a technical person with the skills interested in doing that type of management at this salary scale!
I’m just a mug and they know it!
So fucking angry!3 -
You really have to decide between a full feature set of a software and deadlines. You cannot have both or in other words if you wand all features of your dreams you need infinite amount of money and time.
The funny part about this is that every student learns this in the first semester if you study anything about project management or management at all... And of course in reality pms and cXos don't even give a **** about this...
Sometimes been a software developer just made me sad 😔.2 -
Aren't we, software engineers, the whiniest sort out there? Jira ain't good, Redmine ain't good, nothing can satisfy our needs for lack of commitment towards project administration. 😂
I just catch myself sometimes writing obscene amount of hours in timesheet under "US management in Jira" topic or similar. 😂2 -
Me: Yay! I’m getting more clients which means more income which means my accountant won’t look at me funny anymore when I say I’m still running a business and not a hobby! Go me!
Also me: I need $1400 worth of project management software subscription for 2 years (to get a discount) so I can manage the Agile workload among the developers and writers. I also need to recover $700 of accidental ad spend for that stupid Yelp account I forgot I had a “free trial” on. Guess I’m still running a hobby for a bit.1 -
What do you think about my sibling observation today (he/she is not in software):
- if you want make money in any company, deal with all the shit: incompetent co-workers, shitty management, unreasonable deadlines, misinterpreted Agile, no test coverage, etc.
- if you want to grow and develop yourself: join some easy startup or make your own app/project3 -
Least favorite enterprise software (so far) is Oracle JD Edwards (but more specifically the integration between systems).
Unfortunately a board member was friends with an employee who recommended JDE. It required full time maintenance and a few years later that employee left and the company wrote off over a million dollars to go back to the old (but slightly updated) system.
Following that, a board member (the same one I think) agreed to have another friend's security business install CCTV across the branches. The project was not scoped and no thought had gone into it, making a real mess for the IT department to sort out (provided hardware was under spec'd, existing networking equipment needed replacing, etc)
Who do these upper management people think they are that they can make decisions based on little fact or research and expect the people beneath them to just magically make work.
The huge salaries of those people is not justified. We're the real workers who actually get stuff done so the pay and appreciation should be spread accordingy.
Rant over. -
While planning my (personal) server I just seem to pile up more and more things to do/consider. Basically, for now I just want to have rclone, nextcloud and jellyfin, plus some usenet stuff later on. But I want to have the whole installation and configuration automated as far as possible, since I'll at first it will run in a test environment and needs to be migrated to another server at a point, possibly even another OS. So I suppose that means docker, docker-compose and Chef (any better options?). I want SSL: Traefik. User management / auth? RADIUS, LDAP. SSO? keycloak. I also need to deal with virtual hosts. And probably much more..
Since I just have basic Linux knowledge and have no real experience with any of the other technologies, I feel a bit lost. I just got to the abovementioned software due to some ddg research. I don't mind digging deep, I want to learn (which is half the reason for this project), but it's not easy to the the best way to set this up.11 -
So my non-tech manager has started doing all the estimates for us developers on features upon high management request to save time, because of course rushing all the estimates for the work to be done in the next 6 months is the best process in software engineering.
All the estimates are based on previous work. Sometimes it will be accurate, but most of the time it is absolutely not.
So I get a task estimated to 3 weeks but I planned for 5. Just fit it in 3 weeks.
I planned for 2 weeks but the original estimate is 5. Just fit it in 5.
What kind of crap is that lol? What is the point of us estimating work if management knows apparently better than us how to design systems?
You guys got any similarly shitty project management system?1 -
These past few days were the first days in ages that I actually had time to work on a project. It is also the first time in ages that I pulled all nighters to code. Being reminded of the feeling of putting on some headphones and hacking away on this project was the best feeling I've ever had in so damn long. God I love programming.
If you wanted to know what the project is:
We got an end of year project in comp sci at school and we got a lot of freedom for what we were required to do so I got the idea of creating bank management software cause it seemed pretty simple. But then I started the project and realized how much more I could do with this. So I've been working on an entire bank management program including account creation, database creation, file encryption, payment options, and credit/debit card attaching. It is currently text based but I'd like to create a gui in the time we have left to finish. I'd also like to incorporate more features that come to mind. -
Best coworkers I had on my last project. I learnt from all of them and we were a large team but we all had a holistic view on how software should be made and the standard of quality that we should meet. It was great just a shame management above us didn't realize what they had and ruined such an incredible team.
-
So as a personal project for work I decided to start data logging facility variables, it's something that we might need to pickup at some point in the future so decided to take the initiative since I'm the new guy.
I setup some basic current loop sensors are things like gas line pressures for bulk nitrogen and compressed air but decided to go with a more advanced system for logging the temperature and humidity in the labs. These sensors come with 'software' it's a web site you host internally. Cool so I just need to build a simple web server to run these PoE sensors. No big deal right, it's just an IIS service. Months after ordering Server 2019 though SSC I get 4 activation codes 2 MAK and 2 KMS. I won the lottery now i just have to download the server 2019 retail ISO and... Won't take the keys. Back to purchasing, "oh I can download that for you, what key is yours". Um... I dunno you sent me 4 Can I just get the link, "well you have to have a login". Ok what building are you in I'll drive over with a USB key (hoping there on the same campus), "the download keeps stopping, I'll contact the IT service in your building". a week later I get an install ISO and still no one knows that key is mine. Local IT service suggests it's probably a MAK key since I originally got a quote for a retail copy and we don't run a KMS server on the network I'm using for testing. We'll doesn't windows reject all 4 keys then proceed to register with a non-existent KMS server on the network I'm using for testing. Great so now this server that is supposed to connected to a private network for the sensors and use the second NIC for an internet connection has to be connected to the old network that I'm using for testing because that's where the KMS server seems to be. Ok no big deal the old network has internet except the powers that be want to migrate everything to the new more secure network but I still need to be connected to the KMS server because they sent me the wrong key. So I'm up to three network cards and some of my basic sensors are running on yet another network and I want to migrate the management software to this hardware to have all my data logging in one system. I had to label the Ethernet ports so I could hand over the hardware for certification and security scans.
So at this point I have my system running with a couple sensors setup with static IP's because I haven't had time to setup the DNS for the private network the sensors run on. Local IT goes to install McAfee and can't because it isn't compatible with anything after 1809 or later, I get a message back that " we only support up to 1709" I point out that it's server 2019, "Oh yeah, let me ask about that" a bunch of back and forth ensues and finally Local IT get's a version of McAfee that will install, runs security scan again i get a message back. " There are two high risk issues on your server", my blood pressure is getting high as well. The risks there looking at McAfee versions are out of date and windows Defender is disabled (because of McAfee).
There's a low risk issue as well, something relating to the DNS service I didn't fully setup. I tell local IT just disable it for now, then think we'll heck I'll remote in and do it. Nope can't remote into my server, oh they renamed it well that's lot going to stay that way but whatever oh here's the IP they assigned it, nope cant remote in no privileges. Ok so I run up three flights of stairs to local IT before they leave for the day log into my server yup RDP is enabled, odd but whatever let's delete the DNS role for now, nope you don't have admin privileges. Now I'm really getting displeased, I can;t have admin privileges on the network you want me to use to support the service on a system you can't support and I'm supposed to believe you can migrate the life safety systems you want us to move. I'm using my system to prove that the 2FA system works, at this rate I'm going to have 2FA access to a completely worthless broken system in a few years. good thing I rebuilt the whole server in a VM I'm planning to deploy before I get the official one back. I'm skipping a lot of the ridiculous back and forth conversations because the more I think about it the more irritated I get.1 -
Are you able to imagine working on group project without VCS and project management software like Jira?
You don't have to imagine it, just go on my university where people would most preferably use notepad and pendrives to share files.
Gotta say, that's an interesting experience. -
I pride myself on not being a nerd. I can communicate with customers and I don't dismiss aesthetics, marketing, delivery dates, and legal considerations as completely inconsistent and arbitrary.
But still, when clients complain about my predecessors, I start to feel for them and imagine when past developers
- preferred to rewrite the legacy system
- were reluctant to use Microsoft software
- needed much more time than estimated
- and failed to understand implicit requirements.
I know that there are a lot of developers in the world, but you need a decent or good one who is available and willing to work on your project.
As (web) developers, we should behave more like craftspeople, stay calm, and ignore entitled clients' and managers' moods and micro-management attempts unless there's really a critical issue.13 -
So, I just finished a semester project on Software Project Management, and this was my self analysis and my conclusions, along with my analysis of my team. I think some of you will relate. Hope you enjoy the reading!
My main contributions to the project were helping reviewing the documents syntax, to make sure it was smooth and easy to read with a good english level, working on the systems architecture, coding the application, helping measuring problems within the project and putting people to work by distributing tasks.
I tried to help whenever I could with things that were not assigned to me, even though we are a team, everyone must do what they are assigned for, otherwise disorganization will be installed and everyone will derive from what they are doing to focus on a single thing or point and that would cost us time. I tried to avoid that to see if people could be capable enough of fixing the problems presented to them with the least help possible, making that an example for future use so they don’t always rely on others to get tasks done and to be more independent. Also, helping others figuring out what they were supposed to do helped the team wasting less human resources and consuming less time, which lead to some faster developments on specific tasks. Making the impossible possible was kinda of a weekly routine when the deadline approached because time was short and sometimes tasks were not finished when they should be, so, in a way I helped speedrunning documents to see if they were close to presentable to the client.
As the overall performance, there were highs and lows, where some members worked more than others and that is not fair for everyone because that kept happening again and again, so, my point of view performance wise is that we behaved wrongly when it came down to it. Some of us kept on pushing tasks to others and continuously criticizing over other people’s work without having a logical background to motivate those critiques neither providing solutions to the problems encountered. Well, that couldn’t end well, and it didn’t. It brought our performance down and ended up causing a lot of damage on the project itself. -
Well I'm back on this stupid project with this stupid Product Owner and I really hate this, it really demotivates me.
I was assigned to this project (data analytics) for like 6 months, working alone with this stupid PO that knows nothing about team management or project management.
The guy had a "methodology" where he established all task to be done daily and would not tell me what we have to do in the entire project but instead would tell me day by day all the tasks to be done in each day. This means that HE was the one making the time estimation which is plain wrong!.
Anyways, I talked to him and told him that I need to have a wide overview of the project in order to be able to make a good time estimation, and it kind of worked.
But the guy is a pain in the ass, calls me every 4 hours to "talk" about the project and texts me every hour to check "how are we doing?".
This project was killing me, I had no motivation to work on it, I hated every minute of it, I didn't like it at all to the point my boss (not him) talked to me and asked me what was wrong with me. I told him: This is not the project for me. He told me: Ok let's try to move you to another project.
After six months of agony, the project was stale (customer approval, paperwork, blah, blah) I was assigned to two other projects that I liked, more software architecture and development, not data analytics.
And last week my boss came back to me with "well, the project was approved so we need you back at it".
WHAT PART OF I'M NOT THE RIGHT GUY FOR THIS PROJECT DIDN'T YOU GET?
Now I'm again with this dude, calling me, texting me, sending me infinite emails, asking for minutely updates...
I really don't want to be working on this project. -
I want a new title! I'm currently a senior front-end engineer but often help with ux, project management, and requirements engineering. What title would fit this description? I also have an MS in Software Engineering if that matters.6
-
I know it doesn't really exist in one solution, but I need management software to keep track of customers (crm), projects, products, licensing and contracts, and time keeping. Right now we are using MSCRM (ugh), and old homebrew project/time tracker written in Perl spaghetti (double ugh), email (sigh) and handwritten notes (kill me). Now I suddenly find myself with a budget (somewhat) and the authority to actually fix things. Any ideas would be appreciated.
-
I just want to rant about my teacher who did not teach us on software engineering principles especially on version control and how we handle our code.
[This is Tl;dr section so I won't take your time to read] I just want your advice or opinions on students required to learn version control.
Now that there are many freshmen in our school, I want to teach them the very basics on version control. Our flaws as a group, when we are in developing our project is, there's only 1 person who handles all of the code and that's not very effective, the others were busy on the documentation and project management but not the code that the person wrote. I can relate to that person but I'm actually doing other task and review it. My group mates didn't review my code because it was written in Ecma Script(I refer to them as javascript). I put comments on every functions, conditions, and variables so that they could understand, but they don't.
So If you have any ideas please reply. I will read them and evaluate. -
Rather than using the project management software that the company has spent the past year getting set up and stuck into, the new ops manager seems to think that faffing around in Google Sheets and making pretty schedules is the way forward.
If you're doing some work that's in your actual job list, but not in the new pipeline, ohhhh boy.