|
Ithaqua posted:Kanban isn't a project management methodology. It's an apples-to-tractors comparison. Kanban is a power practiced by fake agile practitioners. If fake scrum doesn't work, put your user stories and tasks on a kanban board, and stop telling people that they need to get stuff done by the end of sprints.
|
# ¿ Dec 23, 2015 05:13 |
|
|
# ¿ Apr 27, 2024 10:04 |
|
ratbert90 posted:What is wrong with gant charts and a simple research -> implementation setup? Gantt charts are useless because nobody really knows how long stuff is going to take to implement past a couple of weeks - the chart is also evidence that you don't know what you're talking about because the dates it shows are incorrect. Now if you start calling two weeks periods "sprints" and story points "days", and get rid of the chart, you don't have to move the bars in microsoft project anymore - this saves the project manager time that can be spent doing something more useless like calling useless meetings or drinking.
|
# ¿ Dec 23, 2015 13:43 |
|
Pollyanna posted:I'm a little worried about my current workplace's project methodology. One thing that can really gently caress up a project is having too many people on it when it starts. It sounds like you have too many people on the project.
|
# ¿ Jan 27, 2016 06:32 |
|
dividertabs posted:I can't convince my team to loosen the PMD rules that enforce Javadoc. So 95% of our public methods look like: Yeah I loving hate that poo poo. The only thing that might be useful in the comment (the description of what the method is intended to do and why) is optional, everything else is mandatory.
|
# ¿ Feb 7, 2016 17:09 |
|
IAmKale posted:Do you guys have any suggestions for finding recruiters who might help with an upcoming job search? I want to get into Python/Django development but I'm not all that eager to enter my resume a dozen different ways for just as many application systems. I'm hoping that getting a real human involved this time around will help streamline the search process. I don't think recruiters are that good for entry level people - if it's not your first programming job, a recruiter is a fast way of getting another job, but if you don't have something lined up and you already graduated, you should either intern or work as a contractor.
|
# ¿ Mar 24, 2016 03:33 |
|
KoRMaK posted:Serious question - when does it matter? When is NoSQL better over SQL? It's great for toy Web Apps. Just json.stringify whatever records you want to store and it's entirely possible they'll come back as json again. Might take 5 minutes to make a functioning backend.
|
# ¿ Jun 10, 2016 23:36 |
|
Cuntpunch posted:It's funny you should mention branching! This is sadly rhetorical, but why is this a technology problem? Why not roll back the changesets of people who do this and fire people who don't look at the things they check in? Nope, clearly the answer is branches and unit test guidelines with code coverage percent thresholds, instead of just not hiring morons.
|
# ¿ Jul 21, 2016 13:29 |
|
My Rhythmic Crotch posted:Medical software by any chance? Medical software companies like to pick some combination of "microsoft as gently caress", "let's build our own programming language", "web based client assuming you install a bunch of activex controls in IE."
|
# ¿ Sep 9, 2016 10:53 |
|
Pollyanna posted:I've learned that it is actually possible to be completely paralyzed by regression testing and thoroughness. I have at least three PRs that have been up for over a month now that haven't budged because one or my co-workers insists on writing regression tests for every single possible result, i.e. "happy" and "sad" paths, such that it's taken about 10 times longer to deploy a feature than it should. I have no issue with regression tests, and in fact I'm trying to port the regression team's tests to Capybara so us developers can write our own tests, but it's gone way off the testing deep end without really accomplishing anything. She's seriously slowed down development due to overthinking everything and has been rather difficult to work with recently (which might be due to the fact that she's manually pulling the branch for each PR and running the manual clicky-clicky regression test on each one). The weirdest part is that she's very reluctant to let me look into establishing Capybara tests for our app so that we devs can write and run feature specs ourselves, instead preferring that we continue to write manual tests and click through everything on any PR we make, even for one-liners. I ran into this problem with a project that had a bunch of manual QA people who were writing an endless amount of manual regression tests. I canceled the project and they all got canned.
|
# ¿ Sep 21, 2016 00:55 |
|
Docjowles posted:I see you've met my coworker, who views the world in two buckets: I'm that guy, but in my defense I write javascript for a living.
|
# ¿ Dec 19, 2016 15:46 |
|
Pollyanna posted:That is the broken down version. What I end up doing is looking at the parent story and writing down the requirements/my own breakdown in the ticket before I work on it, just so people aren't like "BUT I EXPECTED THIS" because I constantly run into that problem and am extremely sick of it. Scrum is used when your company has recently decided that the whole "agile" thing is a good idea and hired a bunch of consultants to give everyone planning poker cards. Kanban is used when scrum is not working for your company because it doesn't have enough of an attention span to group stuff into sprints/split user stories into sprint-sized chunks/complete work in time boxed sprints. As near as I can tell, Kanban involves stacking a bunch of tasks into a queue, prioritizing them, and continuing to execute until you run out of tasks, but still filling in the same reports and calling stuff sprints. It's like being a Mennonite instead of being Amish - you dress the same way, but don't quite do all the crazy stuff the consultants tell you to do. Keep in mind I've never worked a place where doing scrum didn't seem like getting paid to play Dungeons and Dragons, so maybe there are like true believers?
|
# ¿ Jan 2, 2017 06:04 |
|
smackfu posted:How do you deal with people being late to standup? make it a meeting actually worth going to that only lasts ten minutes? don't do it at 9am? have a t-con number so people can call in if they can't physically be there for some reason?
|
# ¿ Feb 2, 2017 12:38 |
|
Steve French posted:How the gently caress is that an entire job? Because it's Scrum(TM), so you gotta have a scrum master and a product owner in every meeting. Assuming the ideal size of a scrum team is like 8 or so people, that means you can bill an extra $100 an hour for every 7 people working on the project. That adds up.
|
# ¿ Mar 1, 2017 05:11 |
|
Colonel J posted:I've been working in development for a few months now (love it) but I noticed that programmers, at least the ones I interact with, tend to use phrasing like "oh yeah, I'm a dumbass" and various other self-insults a lot. I think it's pretty annoying as these people are clearly not stupid, and it's just self-defeating for nothing, pessimism and focusing on the negative. I hate it. Anybody else see this trend/feel this way? Should i just chill out and it's just a turn of phrase, or a window into a problematic part of working in dev? I'm really hard to not be pessimistic when you spend so much time fixing your own mistakes. Most other fields are a lot more fault tolerant. Bugs also hurt if you take pride in your work.
|
# ¿ Apr 5, 2017 02:06 |
|
revmoo posted:The Linux kernel needs like 8 minutes on decent hardware. 37 minutes is either a neural algorithm designed for HFT, modeling the human genome, or poo poo loving code. Just imagine if it were ported to C++, it'd take two hours to build.
|
# ¿ Apr 18, 2017 23:12 |
|
redleader posted:In scrum, everyone on the team is known as a 'developer'. Is this because: 4) Developers get billed for more money. This trick lets you add a documentation writer, three qa, a product owner and a scrum master to a team of four software engineers and bill for ten developers.
|
# ¿ Apr 24, 2017 13:04 |
|
baquerd posted:At a previous position, I just told my manager we'd get him whatever numbers he needed. I then created a class with 10k loc and 100% coverage that did nothing and wasn't connected to anything. His bosses loved the code coverage numbers our team consistently delivered. There was one tool I tested for doing C++ code coverage where if you instrumented a templated function, the code coverage would count for every instantiation of the template - e.g. for code:
So you could effectively make the code coverage whatever you wanted just through a bunch of macros.
|
# ¿ Jul 20, 2017 23:35 |
|
Carbon dioxide posted:How do you deal with CHAOTIC programmers? There are some "hero" programmers who respond to being over-utilized by trying to do everything, instead of pushing back. They'll work incredibly late hours, they'll fix (and create) half the bugs in the product, they'll be management's go-to whipping boy when some problem comes up. Unfortunately, this looks like productivity to upper management, so they'll usually end up in a senior/lead role far before they're ready. This will start causing a bunch of problems both for the hero and the team: 1. Doing poo poo quickly causes more problems later. Customers are never really happy with "oh, sure, the feature only half works, but on the flip side, it only took a day to implement." 2. Too much pressure can lead to shoddy development practices. It's very easy get stuck in a pattern of only testing happy paths under release pressure/ not writing unit tests at all / not refactoring appropriately. Bonus: shoddy development practices produce more crises, so more opportunity to be a hero! 3. Adding a bunch of poorly tested, quickly designed code rots the codebase. Regressions occur even though unit tests pass and nobody knows why. 4. Everyone who works like this burns out eventually, it''s only a matter of time. Addressing bugs caused by technical debt becomes a full-time job, and the people who get promoted and get raises are going to be the people who don't cause problems, produce well-tested code that can be maintained by anyone, and can easily switch onto sexy new projects without being missed too badly by the old project - the hero will get stuck maintaining the legacy product and resent that the people who were chill and don't cause problems get bigger raises/promotions, and burn out through perceived lack of recognition of their "sacrifice." Don't be a hero, and if at all possible, try to work in a place that has practices that mitigate these problems (e.g. competent leadership, good code review practices, good unit test practices.) However - the case could be that the dude isn't overworked, and is just a dipshit. In which case, gently caress that guy.
|
# ¿ Jul 23, 2017 22:55 |
|
Volguus posted:There are ways: I think the rule really should be "don't use goto to jump to a label in a function that is before the goto statement." I've only found goto really terrible when someone uses goto instead of for loops or do-while loops.
|
# ¿ Aug 22, 2017 13:14 |
|
Keetron posted:On linkedin I changed my title to "Software Engineer in Test", I think it will save everyone a lot of time and frustration during the interview process. I hate to break your bubble, but as a SDET in a previous life... - SDET? Isn't that the same as a automation engineer? Go write tests for a legacy application in WinRunner or QTP. - SDET? Wow, great! Our engineers don't have enough time to write to write their own unit tests, you can totally write unit tests written by people who don't understand how to write against interfaces instead of implementation or what dependency injection is. - SDET? Well we're Agile (if you read between the lines this means scrum whenever it's mentioned in an interview). Can you write automated tests for features that don't exist at the beginning of the sprint within 2 weeks?
|
# ¿ Sep 9, 2017 18:40 |
|
CPColin posted:Well that's what I get for turning off that feature because I didn't like the spacing, I guess! Still would rather see the "unused code" warnings show up without having to fart around with the Code Analysis settings. AFAIK C#/C++ will warn for unused code out of the box using debug builds, but won't check release builds for unused code.
|
# ¿ Sep 23, 2017 14:13 |
|
Messyass posted:If she's talking about the LINQ query syntax I kinda agree. That stuff is nasty. The method syntax is much nicer. The advantage of soft-coding your database queries is that if you write code and whatever does the queries is in the code, then you can't throw a dedicated DBA at the problem if a field issue comes up, you would need to involve a developer. Usually even in places that have fully automated deployment, getting a local dev environment set up and being able to test changes to it is relatively difficult because the same people who would put queries in source code are going to be the same people who don't unit test or who don't have meaningful unit tests of the code that talks to the database. (Note that this depends on what kind of software you develop. I'm going to write this from an application software perspective, assuming that the product is an enterprise software solution where you have some sort of central database and a client that is used internally, and your solution sells a database and this client to your customers. From a pure webdev standpoint the stored proc thing makes no sense and shouldn't be done) It doesn't even really have to be multiple stored procs, you can soft code your DB logic by having, say, one stored proc that's a command name and arguments, and then having a table in the database with the command name, and the corresponding SQL that should be executed (don't sperg about this, you probably shouldn't do exactly this in your architecture but i'm using this example as a pedogogical tool.) The application can then just communicate with the DAL by passing command name and args, and the database can decide what actual SQL to execute should be. The advantages of doing that are: a) Fulltime dba can make modifications without changing source/building/deploying to customer sites b) Easier to make your client backwards compatible because the older versions of the queries will be in db, not in client, so if a newer client connects to old database, since it communicates in commands, it knows to just do the old queries c) Makes testing your DAL easier because you can just stub out these commands during integration tests by changing a single table rather than having to make a more complicated test fixture. Bruegels Fuckbooks fucked around with this message at 10:58 on Oct 13, 2017 |
# ¿ Oct 13, 2017 10:55 |
|
Sagacity posted:
Welcome to enterprise software. It makes perfect sense when you have customers that run 15 year old versions of the database and refuse to upgrade but still want to use the new client and have it be compatible with the old system.
|
# ¿ Oct 13, 2017 23:52 |
|
Carbon dioxide posted:I'm currently in my second job as a developer, and at both companies, Scrum was implemented as intended instead of half-assed and we didn't take it too strictly, as in we diverted from the guide when we discussed that doing so would help us out. The management left us alone to run it as we saw fit and/or actively took part in discussions about how to make Scrum work even better. I have about seven years worth of scrum experience. I think the problem is, ironically, "individuals and interactions over processes and tools" - if you are on a team consisting of relatively solid contributors and hands off management, your project is going to succeed regardless of the methodology you choose. I believe that scrum proponents are actually inverting cause and effect - my suspicion is that rather than improving or hindering team success, scrum itself has nothing to do with the actual productivity and performance of the the team - scrum just fails so badly in situations with poor people/poor management that it acquits itself because everyone involved in the failure goes away thinking it wasn't implemented correctly, so people don't chalk up the failure as a "scrum" failure because people "weren't doing it correctly", so you end up with survivorship bias - the people who were on projects with good people who were using scrum attribute the success to scrum rather than being on projects with good people, and then go around evangelizing the virtues of scrum when they're really just saying "previously, I worked on projects with good management and good coworkers. You should try doing that everywhere." My intuition is that process either doesn't matter, or if does matter, than there is probably a process more optimal for non-sunny day situations than scrum.
|
# ¿ Nov 2, 2017 13:07 |
|
Doom Mathematic posted:This drills down into the core question: does there exist a methodology by which mediocre developers can produce good software? (Defining "good software" is left as an exercise for the reader.) 1. Having concrete, clear requirements up-front. The requirements can change, but there should be a concrete starting point. 2. Having actual architecture, documentation about said architecture, and leadership. 3. Mandatory code reviews before commit. 4. Automated testing. 5. Having a big, monolithic QA team. 6. Continuous integration that enforces code review and automated test requirements. 7. No hard deadlines, just ship when it's done. Scrum is more: - Show up to a meeting every single day for fifteen minutes at good companies, or one hour long at bad companies - Planning poker cards ("So a story point is really like a day, right?") - Increasingly strange meeting names like Scrum of Scrums - (for bad companies) Potemkin village software created for the purpose of the sprint demo every two weeks - We need to get our velocity up so we can meet this fixed deadline that absolutely can't change. - Hours of retrospective meetings and planning meetings. Even good scrum is relatively meeting-intensive - bad scrum involves spending literally hours a day in useless meetings.
|
# ¿ Nov 3, 2017 13:31 |
|
ChickenWing posted:I feel like your av is extremely relevant He was in a movie that's way more appropriate for this situation quote:1st Bob: So you physically take the specs from the customer?
|
# ¿ Nov 18, 2017 12:56 |
|
Doom Mathematic posted:It shouldn't be necessary to understand the entire codebase in order to fix any single bug. Right, but sometimes bugs are indicative of a larger design problem. Like for instance, we had a class that would propagate the effects of an operation to other views on the same screen that contained similar data. A class "propagation handler" sprung up that was full of awful procedural code that would iterate through everything on the screen and try to find the entities that were similar. Offshore just kept hacking that class until it worked - however, the underlying cause of the problem was that the cardinality of the relationship between the data and the view was inappropriate, and that they were doing procedural-style copying the data to the view rather than having all the views point at the same underlying data, which is loving stupid. The point is that when doing maintenance work, you need to do a second-level "why" - too often you throw an inexperienced (or even an experienced) developer at a large project, and they just fix the bug. I made a mistake as a lead because I saw there were a bunch of bugs related to propagating operations, but I was busy and didn't own that area of the code, and now I have a loving mess on my hands. If you work with large codebase long enough, being able to detect issues like these and mentally fill in the relationships between the classes yourself (don't work off the diagrams, they're all bullshit) will greatly accelerate your ability to contribute. But don't just fix the bug, figure out the cause of the bug and the cause of the cause.
|
# ¿ Nov 26, 2017 22:10 |
|
Ither posted:When a fixing a bug, when do you band aid and when do you burn everything down and start from scratch? The big problem with burning everything down is that a) The code you burn down becomes your problem until you switch jobs b) It's going to take a while, and it's almost certainly not what your boss/po asked you to do c) If your new thing doesn't turn out better, you'll piss everyone off. Good reasons to throw stuff out: 1. The old code is based off a technology your company is getting rid of 2. The performance really bad and it's not obvious why the task should take as long as it does 3. The code has never hit production and just sucks 4. The requirements of the product have radically changed and it's not worth inheriting the technical debt of the old project. Sometimes engineers will mysteriously hold on to stuff that's not worth saving. 5. There are lots of intermittent issues that are difficult to troubleshoot. 6. You spend days reading code in classes seemingly completely unrelated to the problem you're trying to solve, but actually is totally related for reasons. 7. There are no tests of any kind. Sometimes you'll get a project with no unit tests but an army of QA - don't junk a project like that, it'll be like going to the dentist. But a project with no tests whatsoever that also doesn't work and QA doesn't know about it is totally worth junking. 8. The majority of the code of the project is unrelated to the project domain. Like if your spreadsheet app has 300,000 lines of code reinventing the dropdown menu, something is hosed up.
|
# ¿ Dec 8, 2017 01:55 |
|
Votlook posted:I work at a small company with a few other devs, the CEO just informed us that the CTO (my direct manager) will be devoting all his time on completely rewriting our core product completely on his own, and no longer manage the dev team. either that or he should start sending out his resume. it's unlikely that a commercial product can be completely rewritten by one dude in a short period of time, and you also have to contend with second system effect - he may have shot his mouth off in a meeting about the quality of his developers and said he could do it better, and ceo called his bluff.
|
# ¿ Jan 2, 2018 21:55 |
|
Rubellavator posted:Reminds me of trying to convince some developers on the other-side of the house to use E2E tests. Talking about, set up database with empty schema, insert some data, run a test. They kept trying to make the point that the application HAD to be tested with production data, because real world data blah blah blah. I kept trying to tell them that they as they found more bugs from their real world data, they could add test cases to cover them. Nope, I just didn't understand how wacky and crazy their data could be, there was no point in even trying cause you're bound to miss something! To be fair, I don't even know what their application did besides handle large amounts of questionable data as part of some kind of pipeline process. for some strange reason developers and software test people have some sort of tortured affection for logical positivism. one of my big interests undergrad was epistemology, and working in software, Iroutinely come across ideas about how we know what we know that were shown to be bupkis 400 years ago.
|
# ¿ Jan 20, 2018 18:00 |
|
Pedestrian Xing posted:After keeping my projects independent and "off the board" for a year I finally had to start using scrum/TFS and it is the biggest waste of time. Takes more time to write stupid loving first person task descriptions than it does to do half of them. Also love 4+ hour weekly meetings and 40 minute standups every day. yeah that happens with everyone once upper management decides that you have to be Agile, but wants like a ton of meetings. generally though: a) user stories should be higher level - shouldn't have to justify every task, just a goal you're working toward. b) everyone should just talk to people when they're having problems instead of waiting until the scrum to do it. that meeting is punishment for not taking initiative to work with your team. if people are actually using the meeting to communicate real information or be like "i'm blocked because i'm waiting for so and so to do his thing", your team is defective. similarly, poo poo like the scrum of scrums or other arbitrary meetings are punishment for not communicating offline. c) once you've reached step b), you'll still have to contend with all the sprint estimation stuff. the way to fix this is to say you're switching to kanban. with kanban you can fill out the same forms as scrum and use the same template, but the numbers reported don't actually mean anything, because velocity is meaningless when you just keep doing stuff until you run out of stuff to do.
|
# ¿ Feb 4, 2018 21:19 |
|
KoRMaK posted:Fundamentally, I don't know how you can't see that the current things that companies chase lead to exploitation of their workforce and that unions help the workforce push back against that exploitation. Say you're 16 years old in the US and want to get a part-time job at stop and shop. A month after you start working, you get hit with a 'union entrance fee' (it was 100 bucks in 2002, I hear it's 500 dollars now) and have to, after paying it, pay 9 bucks a month from then on to stay in the union, otherwise you get fired automatically as a result of a contract the union has with the grocery store. That loving sucks. It's difficult to view a union constructed this way as anything but a mere extension of the corporation itself - the notion of a 'union shop' places the union in a position where it is a mere sock puppet of the corporation. Moreover, you now face the situation where if you try to get a raise, both institutions (the union and the corporation) will blame each other for not being able to improve your situation. I like the idea of unions but the actual implementation in the US is loving terrible, and a lot of us get exposure to unions through bullshit like the above. There are good unions - my grandfather was a teamster, and that's a union that really knows its poo poo - but in reality, they behave more like the teacher's union and the stop and shop union in the US.
|
# ¿ Feb 20, 2018 14:27 |
|
Pedestrian Xing posted:I learned today that apparently management wants to start using TFS to compare our performances against one another. How big of a red flag is this? i would think of it as an opportunity. tfs metrics are incredibly easy to game - according to tfs metrics, I'm by far the best developer in the company and have a velocity 35x that of average. i'm getting promoted to architect soon - food for thought.
|
# ¿ Mar 6, 2018 12:50 |
|
Ape Fist posted:Senior management is fully aware of the absolute dogshit that offshoring has brought about. We're months behind on a major project for a Government client and it's largely in part due to our Indian office literally sitting on their hands and doing loving nothing. I have 3 outstanding issues in my user-stories right now that require back-end fixes for bugs I was assigned like 2 weeks ago. I had to go to my project Manager on Friday and sit down with him and explain why poo poo has been sitting in my VSTS list for loving ages and it looks like I'm not loving doing anything. This is only going to get loving worse. I mean, it might be different where you work, but generally, if I'm dependent on another team for something, I'll un-stick the user story by learning their component, making the change I need, and throwing a review. The benefits of doing this are: a) It's a great way to learn new technologies (or ancient, bizarre ones) and make yourself more marketable while getting paid for it. b) People are not going to say no if you do their work for them. c) You learn more about the system and will be able to troubleshoot and triage bugs more easily. Like if you're dealing with say, binaries provided by a third party, there may be limits in what you can do - but so long as your back end developers are checking in source code that you can read, it'll look a lot better to say something like "yeah, it looks like a problem in the back end. I made a task for the back end developers but they've been slow, so I'm trying to learn the back end well enough to fix the problem myself and send a review." Now if you're in a place where you're like, flat out not allowed to just go into someone's project and open a PR, then that is some weird poo poo (it may be justified in isolated instances, I don't know). There are also places where the instructions for doing a build aren't written down or are fifty pages long, and it takes a week to set up your dev environment and half the time it doesn't work - in those cases, you should relax and stop worrying about your individual contribution because the project is hosed anyway.
|
# ¿ May 2, 2018 12:43 |
|
Yeah, I'm going to start bringing this up at work.
|
# ¿ May 25, 2018 15:38 |
|
Shirec posted:Blood, sweat, and tears, we got 1.0 ready to go, rickety and buggy, by mid December. Boss presents it to CEO, CEO says he wants the ability to pause this and that, do some other things that make multi tenant completely infeasible. So we have to re-do all of it. We get a week and a half of blissful vacation and come back to this news. omfg are you working on a vna (vendor neutral archive)?
|
# ¿ May 31, 2018 09:36 |
|
Shirec posted:No, we’re a messaging platform. We take uploaded information from whatever health care facility and perform some sort of messaging action with it. Payment reminders, surveys, reminding people to get their H1C1 levels checked, etc etc. that's almost a relief, if those kind of HIPAA problems were going on with someone working on a VNA, that would be the most ridiculous lawsuit ever.
|
# ¿ May 31, 2018 15:52 |
|
Keetron posted:When I invent a time machine, I will first go and kill the grandparents of the guy who invented SAFe and only after I will go after the guy who killed Hitler. the problem is that it's an idea so bad, it couldn't have been invented by one person. poo poo like safe catching on is why you should hire philosophy majors to run your business instead of mbas or business majors.
|
# ¿ Jun 3, 2018 16:02 |
|
Munkeymon posted:It sounds like the 'magic error translator' is actually i18n which is a valid use case for magic number translations on the front-end. Or course, you can send a magic number and an error message in the team's common language just as easily most of the time. Back in the C++ days when we were doing i18n and needed to stop doing a build for every single language, we made a dll where you'd pass in the 'developer english' string, and it would spit out the string in the locale's language. Worked great. Now it's 2018 and I'm doing web dev and we're doing magic numbers for i18n strings in the client. Even though it's a little more space, using developer english plus a lookup table is much easier than dealing with mickey mouse magic number bullshit imo.
|
# ¿ Jun 28, 2018 07:29 |
|
|
# ¿ Apr 27, 2024 10:04 |
|
Che Delilas posted:Welp, big ol' priority shift with a laughably short deadline for the requirements that we heard about late last week (with no input from the devs before the deadline got set, naturally) got shortened again by 25% today (yeah that's indeed about 2 business days between those two events). Meanwhile, interrupted with "hey can you look at this bug" all day. Years ago, I was a lot more willing to do things like rush implementation or write stuff without unit tests just to make management happy. Here's what I found happens: 1. You look like a hero... then you have to maintain that poo poo. 2. It does not look impressive to anyone if you say there's technical debt - that sounds to management like you hosed up, even if it's nobody's fault. 3. The people who made you work sixty hours a week to make a customer happy get promoted. You get to keep fixing the poo poo hacks you wrote forever and get 2% raises while doing it. I mean, yeah, that place is hosed up. But when you go to the next place, show some backbone, and go at your own pace.
|
# ¿ Jul 3, 2018 11:45 |