Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Khisanth Magus
Mar 31, 2011

Vae Victus

Volmarias posted:

TDWTF is littered with examples of terrible developers looking for a row in a table by doing SELECT * and then iterating over the results. Even if the database responded instantaneously, it's still an O(n) vs O(1) operation. As your data sizes get larger and larger, having a grasp on the complexity of your queries and your critical sections can have outsized results.

I realize this was posted a month ago, but it was just the previous page, so going to respond anyways!

My job is working as part of a team that does customization and fixes for third party software that my company decided to move to as their main platform for their business. The third party software is (in theory) a complete black box, with us not having access to the source code(officially). One thing that has been a problem since the software was implemented here was that it is very very slow. One of my first tasks as part of the team was supposed to be fixing performance issues on some data retrieval that is both used in the app and there is also a web service that calls it. I wasn't having much luck, so I was a bad boy and decompiled the code to see what was actually going on.

This is how the data retrieval was structured:
Step 1) Pull in keys for every entry in the table
Step 2) Iterate through all the keys and pull in the details
Step 3) Finally filter out the results we don't want

This made me want to go jump off the building's roof because of the sheer stupidity. There is 0 chance you would ever want everything in that table, so why they weren't using 1 query to pull in the entire filtered data set is beyond me. Luckily they have their entire code base with the functions being virtual so that their developers can do customizations for customers.

Adbot
ADBOT LOVES YOU

Khisanth Magus
Mar 31, 2011

Vae Victus
My first job we were just supposed to log what project we spent what hours on, but since for the most part we worked on a single project we just logged all our hours into that project whether we actively worked that many hours or not.

My second job we were supposed to log what time we spent on what task in what project in 2-3 different locations. This was probably because we were a government contractor.

My current job we don't log time anywhere. Some people have suggested it, but luckily IT's leadership has passed on implementing it.

Khisanth Magus
Mar 31, 2011

Vae Victus

CPColin posted:

"Anybody know which issue caused this error message?" he asked, having already looked up who did it.

*time passes*

"It looks like it was commit number a1b2c3. Anybody remember where that came from?" he asked, despite the Blame command already telling him.

*time passes*

"Hey Team X, fix your poo poo!" he wished he could say.

I hate places where you can't point out the person who actually broke something and tell them to fix their poo poo. At a minimum you should be able to talk directly to the person and tell them that they broke X and need to fix it.

Khisanth Magus
Mar 31, 2011

Vae Victus

Ithaqua posted:

"Tear down this architecture we've been using for years" is way too big to estimate, it should not be a user story.

Yeah, that sounds like a problem with how you guys were doing things and not a problem with the methodology.

Khisanth Magus
Mar 31, 2011

Vae Victus

Axiem posted:

On my previous team, we had a weekly estimating meeting on new stories in our pipeline. To do the actual estimating, we'd all read the card, then raise our hand (or otherwise indicate) when we'd made an internal estimate. We'd then go around in a circle and say our own estimates.

I think the highest ended up being what we put on the card, but that never really mattered to us. It was more about seeing "are we all on the same page regarding the scope of this story?" If one person said 8 hours and another said 40, we'd go "whoa, why so high/low?" It often led to good conversations about what actually needed to get done with a little bit of how, and meant everyone knew something about each story, so they wouldn't go too far off the beaten path if they ended up pulling it.

I liked it well enough, though I thought it was stupid to use hours and we should have done a sizing system (< day, 1-3 days, 1 week, longer, or something like that).

In terms of actually using estimates for planning or communicating with management, I thought they were worthless, and I don't think we should have been sharing those estimates outside of that room, because they just lead to unrealistic expectations.

At my first job, before we had started to do scrum, our team leader had been reluctant to give actual hour estimations to our rather shady project manager we had at one point. So, while she was gone for vacation, he called a meeting with the team and tried to get us to do the estimations with the lead not there. These estimates were totally not going to be used for anything, and certainly management wasn't going to hold us to them like they were set in stone, no sir.

He was canned like a week after our lead got back from vacation.

Khisanth Magus
Mar 31, 2011

Vae Victus

386-SX 25Mhz VGA posted:

I've been on three different teams now "making the transition to Agile," and every one was a poo poo show. I'm curious to know whether anybody has witnessed "a transition to Agile" being accomplished successfully.

My first development job we went from full waterfall to full scrum within like 6 months, and it worked out awesome. However, it was being driven by the CEO, and shoved down the throats of the business people whether they liked it or not. They also paid for formal training for everyone, including the business people. The company also wasn't too huge, and was a non-profit education company.

Apparently the leads of our development teams at my current employer had a meeting the other day and they decided to have a vote on whether any source control other than vanilla TFS was going to be allowed to be used by the teams. The vote was "TFS FOREVER!" I hate TFS. I've used multiple source controls at previous employers, and TFS is inferior to them in so many ways.

Khisanth Magus
Mar 31, 2011

Vae Victus
There are days I wonder if I'm the only developer out there who really doesn't like paired programming.

Khisanth Magus
Mar 31, 2011

Vae Victus

Rocko Bonaparte posted:

Is it true in any sense that a story point very coarsely translates to a man-week? I know it's bad news to make a direct correlation, but I'm dealing with a magnitude issue here. Somebody in the organization is claiming this is how grown-ups do this in the industry, and I think they're talking out their rear end. I always heard a more rough correlation to hours. That is, people try to plan to a more fine granularity. My previous jobs might have been messing that up, but that's what they were all trying to do.

Yadda yadda points are abstract, I know, but when you have somebody else saying that your story points have to be Fibonacci and can only go as high as 13 points, whether they're more like weeks or hours suddenly matters a lot more for deciding when you have to break down work more.

Doing story point = specific time is completely losing the point of the agile/scrum point system and you may as well go back to traditional estimations at that point and lose the fibonacci sequence numbers. The team I was on that did it the best had kind of basic tasks associated with each number to give a general idea of how much effort it would take.

Khisanth Magus
Mar 31, 2011

Vae Victus

revmoo posted:

I worked at a place for a bit that if a bug was discovered in a feature you built, it came back into your sprint as a 0-point task that had to be done alongside whatever else was in your todo list. So dumb...


No. I pretty much leave work at work and don't do too much outside of the office. I rather be out riding my motorcycle or turning wrenches than talking shop.

As much as I'd love to program outside of work to increase skillsets that I don't get to implement in the office, I find it really hard to get excited about doing any programming once I'm home. Except for the one form of programming that I know I will never get to do professionally, but which is my real passion in development, which is AI.

Khisanth Magus
Mar 31, 2011

Vae Victus

ChickenWing posted:

:yotj:

Landed the consulting job. Oh god what are all these technologies how does this work aaaaaaaaaa why isn't this my rigidly organized 100% boring tech banking platform :psyboom:

Hmph, some consultant you are, not being a god level developer on every modern technology?

Khisanth Magus
Mar 31, 2011

Vae Victus
Ah, gently caress me.

So, our senior most developer on our team has been assigned to work on 3 important interfaces for our project. Like, "contractually obligated or company will take a huge reputation hit and lose a lot of money" type big deals. She was assigned to start working on this in March. We finally have seen what "work" she has done in those 3 months.

All she has done is correcting spelling errors and cleaning up comments in the existing code. She hasn't made any of the changes needed for any of these projects. We have to have these out there by June 18th, and it is going to need heavy testing. Another decently smart developer on my team and I are now in damage control, "crank out 3 months of work in 2 weeks" mode.

Whee.

A big kicker is that we had had a sudden shift to where working from home and working outside of normal working hours has started to get some push back. I think this may be part of it, because the person who hasn't been doing any work has been working from home almost the entire time. I kind of feel for her, she has a son who has all kinds of health and mental issues(in particular he suffers from extreme anxiety) and her mother just passed away, but this is really putting the rest of us in a big pickle.

Khisanth Magus
Mar 31, 2011

Vae Victus
I think it really just came down to her being one of the most senior members of the team resulting in her updates of "still working on x project" to just be accepted at face value. These really had no milestones beyond "competed on this date" and our "scrum" meetings are completely devoid of the kind of details i expect out of them based on previous experience.

I think really the base problem is that this company is growing very fast, its IT projects are likewise growing, and the project management and procedures just haven't been able to keep up.

Khisanth Magus
Mar 31, 2011

Vae Victus
Well, I don't think we will have any problems getting the most important one with a 100% inflexible date done with at least a week where we can test the hell out of it. The thing about all of these things is that none of them are particularly hard or complicated. So I don't think we are being thrown under the bus for this.

Khisanth Magus
Mar 31, 2011

Vae Victus
Well, it doesn't help that our manager is in California and almost all of the team is in Iowa. That is one thing I've never understood.

Khisanth Magus
Mar 31, 2011

Vae Victus
I do think that this disaster is going to result in changes in how we do things. If not initiated by my manager I will start proposing things, as I don't appreciate putting out other people's fires, no matter how good I am at doing it.

And it has been made clear to everyone who needs to know what is happening with these projects.

Khisanth Magus
Mar 31, 2011

Vae Victus

Cast_No_Shadow posted:

Sounds like you have an inexperienced project manager. You know, one who hasn't had all sense of trust beaten out of him/her.

The irony is that our original manager, who was local, knew what he was doing, kept abreast of things, and took no poo poo from anyone was demoted and this other manager put in his place. I don't think this would have happened under the team's original manager.

In related news, we have since discovered that the requirements we were given for the absolutely critical project were completely wrong, requiring a rewrite of most of the work we have done over the past few days. Luckily it doesn't invalidate everything we have done, but unfortunately the part we had the wrong requirements for is the base part that everything is built on. The other parts that have been completed will only need minor changes to fix under these new requirements, but the actual most basic part of it will require a complete rewrite.

Basically gently caress the people who took in documented the requirements for this.

Khisanth Magus
Mar 31, 2011

Vae Victus

rt4 posted:

Aren't regular checkins with the client a part of agile?

Actually doing agile would be pretty awesome! It is a bit of a fight I'm currently having with the Project Management group here.

One thing I will say that is good about this place is good DBAs. They are competent, know their stuff pretty well, and are very responsive when we need things.

Khisanth Magus
Mar 31, 2011

Vae Victus

PT6A posted:

Remember when the huge talent pool of overseas developers was going to put first-world developers out of work with their super intelligence and willingness to work for next to nothing?

That was pretty funny.

Some oversees developers are pretty good at their work though. We have one who was a contractor who used to work in our office until the US wouldn't renew his work visa, so he had to go back to India. He is still working for us there. He is drat good at his job, and we all dread when his contracts ends. Which was going to be at the end of this month, but we got it extended for another couple months.

Khisanth Magus
Mar 31, 2011

Vae Victus
So, it came kind of down to the wire, but we did successfully complete the important projects that were dumped on me and a colleague after our coworker completely dropped the ball on them. So, yay for that.

In other news, after 10 years of being a lowly code monkey(a position I quite enjoyed thank you), I am now the active manager of a team of offshore developers(some of which used to work onshore so I already knew them), and am also going to be leading an onshore team on another project. All of this happening in a one month period of time. This will be accompanied by a promotion and raise as soon as the new head of IT finishes with his current project of consolidating and defining the different positions in the department, as all promotions have been put on hold until that has been done.

So yeah, that happened...and honestly I kind of feel in over my head for the first time since I joined the software development world. Whee.

Khisanth Magus
Mar 31, 2011

Vae Victus
Was wondering if I could get some advice from this thread. A month or so ago our only Sr developer was fired(which is a very long story, but the short of it was that he brought it on himself), and next week our manager is interviewing 2 candidates for the open position. The kicker is that he would like me and one other team member to also interview the people, both to ensure that they actually know their stuff and that they would be a good fit for the team. Neither of us have ever interviewed anyone before, and most of the interviews I've been on the other end of have been complete bullshit. I don't see any real value to asking someone to code some algorithm on a whiteboard. So I was wondering if anyone knew of any good resources I could read to find good interview questions for a Sr dev position.

Khisanth Magus
Mar 31, 2011

Vae Victus

Pollyanna posted:

What happened to the first Sr. dev?

Was a long series of stuff. When I started he was the team leader/manager of the team I joined, but he was rather abrasive without any real brain-to-mouth filter and offended a lot of people, in particular the very controlling lead PM on our project, so he got demoted down to SR dev. Continued that way for a while, with him officially being SR dev but still doing lot of team lead stuff. Was a good developer and team lead, but continued to offend lots of people with his abrasiveness and outspokenness. He was in charge of updating the third party software we develop on to a newer version. The upgrade went tits up, with us being hosed over by the vendor at every turn. Which OK, that is bullshit and was not entirely his fault. What was his fault was deploying the broken, half finished stuff to our testing environments before going on maternity leave for 2 weeks, with no one else knowing enough about how our deployment software works to be able to undo it, causing us to waste 2 weeks trying to unfuck stuff. After he got repremanded for that be busy stopped giving a poo poo and didn't really do any real work until he was eventually fired after being on probation for like 4 months.

Khisanth Magus
Mar 31, 2011

Vae Victus

AskYourself posted:

Wow I can relate with some stuff in this, especially the not caring part after coming back from parental leave.
Having kids really put a lot of thing into perspective, what I though was a big deal before I really didn't give a poo poo after.

Well, this was his 5th or 6th kid, so its not like having a kid was a new thing to him :p

He didn't really care about being fired though, during the entire time he was on probation he was job hunting and already had an offer lined up for when he eventually got fired.

Khisanth Magus
Mar 31, 2011

Vae Victus

Rubellavator posted:

I would never think of the scrum master as being the person in charge of delivering a product. A scrum master where I work is just the person who runs the stand-ups and planning/retrospective meetings. Is that weird?

That is basically what it has been in my experience. Run the meetings, and do the burn down chart, that is pretty much it.

Khisanth Magus
Mar 31, 2011

Vae Victus
My first development job(in the US) had 20 days of vacation and "unlimited" sick leave. Unlimited in that there wasn't a set limit, but if you had more than 5 "events"(an "event" was defined as one or more consecutive days off from illness, and all routine doctor appointments would be rolled into one) you would get written up.

After a couple years of working there they got rid of the "unlimited" sick leave and put it at 20 days. Which was still pretty absurd for a US company. But I learned myself that the "you will be written up for actually using this time" thing was still in force, because my wife was having severe health problems(after we had been married for like 4 months) that had her in and out of the hospital for a few months, so I was taking a lot of time off to be with her. After using 6 days of sick time for that I was warned that if I didn't file "family and medical leave act" paperwork I would be at risk of losing my job.

Khisanth Magus
Mar 31, 2011

Vae Victus

The Fool posted:

I like systems that let you regularly accrue hours with no, or with a very high maximum. The rate of accrual is controlled based on whatever criteria (seniority, position, etc.)

That way I can take 2 or three long weekends in a year, let some of my time roll over, then take a 3 week vacation next year.

I was helping a director with an issue a couple days ago and happened to notice that she had ~200 hours of leave banked.

The reason that companies have limits generally is that they are required to keep money on hand to pay out accrued vacation for all of their employees, so if they didn't have a maximum that would be more and money money they'd have to just sit on. At least that is how I understand it.

Khisanth Magus
Mar 31, 2011

Vae Victus

The Fool posted:

I'm in the US, so the joketruth is that neither is true.

Crappy benefits and crappy retirement so you will be working till you keel over at your desk!

Khisanth Magus
Mar 31, 2011

Vae Victus

Hughlander posted:

If you get fired you'll have a better job tomorrow.

That must be nice. After I got laid off from my last job due to my team being downsized I was unemployed for a bit over 3 months, Which no real savings and a wife who can't work made rather difficult.

Khisanth Magus
Mar 31, 2011

Vae Victus
I start at 9. I'd prefer to start at 10 but 9 is the start of the "core hours" we are expected to be working here. On the plus side this means that unlike at my last employer no one tries to schedule things to start at 8.

Khisanth Magus
Mar 31, 2011

Vae Victus
I have a sleeping disorder that makes it pretty impossible to sleep before 2am.

Khisanth Magus
Mar 31, 2011

Vae Victus

JawnV6 posted:

There’s something to be said for a long commute isolating home from work and vice versa. If you can pop back and forth trivially, it’s easier to ignore other boundaries.

I lived a 7 minute drive or bike ride from my previous job. Only time I would "pop back and forth" would be if I happened to want to run to the office after hours to print something since I didn't have a printer at home. I went to work when it was time to go to work, and when I left the office I immediately stopped caring about work stuff.

On the other hand, a long commute means that my job is eating up even more of my free time. I am already losing 9 hours of my day to my job(8 hours working, 30-60 minute lunch depending on the place, short commute), I do not want to lose even more time that I could use to do things I actually enjoy. My 25 minute commute at my current job is about as long as I could put up with, and even then I am working with my company to let me work at a remote location we have that is 5 minutes from my house.

Khisanth Magus
Mar 31, 2011

Vae Victus

JawnV6 posted:

"I do this naturally, without effort. Why would anyone else, from any background, ever have difficulty with this boundary? It's inconceivable and i refuse to imagine the scenario" - actionable advice from forum folks, looking forward to a half dozen more of these super useful posts

It's really just a matter of how you look at things and perspective. For me, work is something I do to make money so my wife and I can live a comfortable life doing things we enjoy. That is all it is. I absolutely loved the 2 months I was unemployed while I had enough savings we could continue to more or less not changing our spending because it meant I got to spend more time doing my number one priority with my life: enjoying myself.

Khisanth Magus
Mar 31, 2011

Vae Victus

negativeneil posted:

And to be clear, I don't expect my PMs to be omniscient or infallible. I'm saying it seems like my PMs don't know that this is literally what their job is.

So like 50% of all PMs out there?

Khisanth Magus
Mar 31, 2011

Vae Victus
The PM at my last job wasn't even involved in gathering requirements or anything. That was the BA's job. The PM seemed to exist just to run development like a dictator, to the point where she would assign exact tasks we would work on every single day of the 2 week "sprint"(we were pretending we were agile while being anything but), and if the estimates were off and something that was estimated at 1 day of work took more than 1 day you were expected to work as much as was necessary to not let the schedule change.

Khisanth Magus
Mar 31, 2011

Vae Victus
You know, while I know that paired programming can be useful and that some people really like it, its somewhat baffling to me at my new job that one of the people on my team seems utterly unable to develop any new features without pairing with someone else for the entire development. This seems a bit excessive to me, but then I've never been a big fan of paired programming in the first place.

Adbot
ADBOT LOVES YOU

Khisanth Magus
Mar 31, 2011

Vae Victus
Been working at my new job for a month, which is working on a piece of software that has been in continuous development for 17 years now. I've started picking up progressively more complicated work. A couple days ago I picked up a story that was essentially "We need this API endpoint to include this piece of data that we return in this other API endpoint." Ok, they have lots of similar data, the one in the story was just missing a couple pieces of data and then I can easily retrieve that data and put it in the returned object. Took a couple of days to figure out how the methods to actually get this data worked(as I said, the code base is 17 years old so it has some issues weird workarounds and spaghetti code here and there), but I finally got it working!

Then, at today's standup, people were like "Oh, we should probably discuss these things that are going to need to go into this story that we didn't spell out". Things like the fact that in addition to adding that data to the API endpoint, all of the data in the endpoint is now supposed to come from a different source than it does right now. They apparently didn't actually put this in the story, it seems it was just kind of "understood" that would be part of the story, and no one bothered to tell me until I had already worked on the bloody thing for 2-3 days. This results in basically all the work I've done in that time on this story getting scrapped.

Whee.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply