Is your job divisible?

Is your job divisible?

  • Yes.

    Votes: 9 60.0%
  • No.

    Votes: 3 20.0%
  • I am not being paid for work.

    Votes: 3 20.0%

  • Total voters
    15
I agree on that, but sadly that doesn't work for doing a PhD :/.
The bus number for basically all projects around is 1 (besides for the data backup, for which it is 0.5), unless you consider 2 years to still be a short timescale.
(...okay...maybe not all projects, in some probably people can dive in and get something useful out within....er....3 months, maybe).
But well, that's again a special situation, I guess.
 
If I was hit by a bus tomorrow, I think that the grad part of the university I work for would have huge problems. All the stuff I've built for the most part runs itself, but it does require regular maintenance, monitoring, upgrades, and so on. I'm the only one in existence who understands how it all works. It takes a couple weeks or even sometimes months to hire someone around here too, so they would be without a web dev for a while - that's showstopping stuff. And once the new person joins, there would be nobody here to bring him/her up to speed - my supervisor isn't a developer and my boss (the director) isn't one either. Nobody really knows what I really do, to be honest.

The best they could do is hire someone from the office of the registrar's web team - and that web team would probably help plug any holes while my boss looks for a replacement.. but the web team only has 1 or 2 developers who seem to be of the senior variety - and I don't think they'd want the job - I think they are pretty happy where they are. I could see one of the up and comers there getting the job - but anything less than a senior developer getting this job would be a huge fail. Things would start falling apart pretty quickly. I trust my friend (Peru hiking buddy) to take over, but I think he'd quickly start ripping his hair out once he realized how things get done in the grad world. It's like the wild west - no planning, no documentation, and a total disregard for the software development lifecycle. The Web team is super organized in comparison. Any person replacing me would need weeks and probably months to get a grasp of everything, and while that's happening a huge backlog of stuff that needs doing would be building up in the background. And if the person is coming in from the outside? Yeah, that would 98% of the time lead to problems, but short term and long term.

I think eventually they'd conclude that they need to hire 2 or 3 or even 4 developers to cover the stuff that I do. And me? I'd be in heaven with sexy babes, laughing my butt off (but feeling a bit bad that my boss has to deal with all that)
 
I agree on that, but sadly that doesn't work for doing a PhD :/.

Well the idea there is that the research isn't important enough to continue in the case of sudden death. Even if everything was perfectly documented by the researcher with the expectation of random bus-death, the overwhelming majority of phd projects would just get abandoned.

It's akin to sole-proprietor businesses - if the owner dies, the business goes away.

If I was hit by a bus tomorrow, I think that the grad part of the university I work for would have huge problems.

Well it doesn't matter much to you, but that's a major failure on your bosses' part. They'll learn once someone does get hit by a bus.

I've worked for companies full-time in the past where I've quit, they haven't had proper plans in place, and I've charged them contracting rates which were drastically higher what my FT hourly-equivalent wage was (and significantly higher than my normal contracting rate) for months worth of work in helping them transition to new people. Would have saved them a ton of money to have me do the work on salary as an ongoing part of my job, and they wouldn't have been vulnerable to me being unable or unwilling to do the work afterwards.
 
Well it doesn't matter much to you, but that's a major failure on your bosses' part. They'll learn once someone does get hit by a bus.

It does matter to me, and I make a push for a "different way" of doing things when I realistically can, but in the end there isn't enough time to worry. I have projects on my plate, stuff has to get done, and I always have something to do. I have also learned to stay out of ... decisions that are outside of the scope of my pay grade. I let the people above me deal with that - and I stick to stuff I'm responsible for.

I don't think my boss thinks that me suddenly leaving would be so bad, or maybe he does. I think instead of changing their ways, they would prefer to make sure that I stay around by trying to give me a good environment to work in.

I make all the things I built extensible and as idiot proof as I can - as well as trying to adhere to coding standards.. So it's not horrible. There's just so many systems in place that a new person would lose his mind making sense of all of them. The key to all of it sits in my head.

I have heard of people doing what you've done - quitting, and then being hired on as a "consultant" in order to help with the transition.. I don't think it would fly here (not much money to go around - budget cuts, etc.), but honestly - if I ever do leave, I will announce it a couple months before I do.. Just so that nothing falls apart. One of the things I get out of this job is the satisfaction that users out there are having a good user experience.. and that the things I make help them in some way or other. Seeing all that crash and burn wouldn't feel very nice - so for the interests of all involved - if I'm leaving of my own accord, then I will take special care to ensure a seamless transition. Depending on who they decide to hire to replace me, if it's some junior developer or some idiot, I'm just going home.
 
Like warpus, I'm a programmer and limit my work to 40 hours a week unless there's something really critical going on, which is about once per year. Most other developers where I work also do that, so it works out. If I were to work more than that per week, I'd have to be a lot more into what I was doing. Which might be possible with some jobs, but since it isn't at my current one, I'm not going to invest more time for no benefit (and it isn't the sort of company where I'd expect a noticeable promotion/raise as a result).

Technically, I don't have flex time, but de facto I do somewhat. My direct boss is very much of the "if you're getting your work done, I don't care where you're doing it" with time being somewhat flexible, but the higher management is very traditional. So what's worked out is that she's received a go-ahead for us to have some flex time, but it's not technically by the books.

The idea has been raised where I work of having bonuses for doing things outside the standard. Things like warpus mentioned with redoing low-quality old systems. That hasn't gained any traction yet, and most people don't want to stay till midnight and still have to work the next day, so the low-quality old systems stay unless upgrading them is put on a roadmap.

In terms of "divisibility", my job is somewhat divisible. The main reason I came in to work late at night last year, for example, was updating systems. After the first time (when the developers were needed in case something went wrong), this really should've been a system administrator's job. But our two system administrators are already swamped, so it's always the developers who do the production upgrades (this is supposed to change this quarter). And the one other developer on my team could do substantially everything I do, although our bus factor is likely 0 since with one fewer developer, it wouldn't be possible to meet our current goals. If I were to leave, our roadmaps would suffer, but eventually things would be back on track once replacement(s) were hired and trained. Which, knowing the management, would take quite awhile. Although much like when one of our DBAs left, there might be a need to reach out with questions for a month or two.

I rarely check my e-mail outside of work hours, in no small part so as not to set the expectation of being always available.

As for being able to work 1/4 fewer hours and share with a colleague? Provided we actually hired someone, that would probably work pretty well. 8 hours/day and 5 days/week is already past the point at which I can be optimally productive all the time, so I suspect the amount I got done wouldn't decrease much, and might well actually increase (it's the same reason I take breaks occasionally when I notice my focus disappearing). I've often wondered why American society is so enamored of the 40-hour (or more) work week, as productivity increases with technology. It would seem that, having achieved a good standard of living several decades ago, the average work week should slowly decrease over time while maintaining the same standard of living, much as it did in the late 1800s and early 1900s. Unless the goal is for everyone to work the same amount but have their own yacht, which I'm okay with forgoing.
 
It does matter to me, and I make a push for a "different way" of doing things when I realistically can, but in the end there isn't enough time to worry. I have projects on my plate, stuff has to get done, and I always have something to do. I have also learned to stay out of ... decisions that are outside of the scope of my pay grade. I let the people above me deal with that - and I stick to stuff I'm responsible for.

I don't think my boss thinks that me suddenly leaving would be so bad, or maybe he does. I think instead of changing their ways, they would prefer to make sure that I stay around by trying to give me a good environment to work in.

I make all the things I built extensible and as idiot proof as I can - as well as trying to adhere to coding standards.. So it's not horrible. There's just so many systems in place that a new person would lose his mind making sense of all of them. The key to all of it sits in my head.

I have heard of people doing what you've done - quitting, and then being hired on as a "consultant" in order to help with the transition.. I don't think it would fly here (not much money to go around - budget cuts, etc.), but honestly - if I ever do leave, I will announce it a couple months before I do.. Just so that nothing falls apart. One of the things I get out of this job is the satisfaction that users out there are having a good user experience.. and that the things I make help them in some way or other. Seeing all that crash and burn wouldn't feel very nice - so for the interests of all involved - if I'm leaving of my own accord, then I will take special care to ensure a seamless transition. Depending on who they decide to hire to replace me, if it's some junior developer or some idiot, I'm just going home.
Well written documentation can make everything easier. ;)
 
Indeed it does! But the sort of documentation I have time for is inline documentation that explains what specific parts of the code do - or what specific functions do.

There is no time to write up and maintain documentation for projects as a whole. Well, for some projects my supervisor actually does that, in a way - there is documentation in some cases that explains the business process that the software is built around.. but yeah, there's no time for anything else.
 
I'm glad we do make time for documentation where I work. That's actually been a deliberate effort on my team, in part because the people who created our product 10+ years ago did a generally poor job of documenting it, and much knowledge about our product was lost as people left the company. Ideally, there will be both inline documentation (which is actually quite rare in the legacy code I work with), as well as higher-level conceptual documentation.

And it is paying off. Just today, my boss asked me how to do something. I'd written it up when I first did it last June, knowing that it probably wouldn't be obvious in six months, and was able to quickly send the link along. It took some time to write it up then, but it would've taken more time to figure it out again had we not written it.

Nonetheless, even with good documentation, it takes time to get someone up to speed. It will make it take less time, and less one-on-one instruction, but there will always be a ramp-up time.
 
Indeed it does! But the sort of documentation I have time for is inline documentation that explains what specific parts of the code do - or what specific functions do.

There is no time to write up and maintain documentation for projects as a whole. Well, for some projects my supervisor actually does that, in a way - there is documentation in some cases that explains the business process that the software is built around.. but yeah, there's no time for anything else.
If I were your boss, I'd insist on it. You could always postpone your trip to Norway :mischief: or work a few more hours for a few weeks.
 
Our projects are funny - each one lasts a couple years, and then it has to be scrapped or rebuilt. Not because it was badly built, but because the technology changes so much and the processes that these solutions are built around change often as well. As far as I know not even the undergrad web team documents on a level more elaborate than what I do - there just aren't enough resources available. But because of the nature of the projects, it usually means the negative impact is minimal.

You give a good example of why I should be documenting more than I do, but there really just isn't any time. There is a long list of new development projects, rollovers, upgrades, bugs to fix, etc. There's always something to do. I'm glad I played it smart when I was building these things - they pretty much run themselves.. but at times problems do happen, I admit. I think I'd need an underling developer to help me out with the documentation pretty much - but again there are no resources for such things..

It's not easy to explain a programmer's work.. philosophy.. to a non programmer. Some people just don't understand the need for flexibility. That's how I'm tying this into the subject of the thread anyway - I'm not sure how exactly, but the first two paragraphs tie into the third. I'm sure of it.

If I were your boss, I'd insist on it. You could always postpone your trip to Norway :mischief: or work a few more hours for a few weeks.

We're not allowed to work overtime.
 
I know these things. I document my code - I just don't have time to write extremely high level documentation that describes projects.

For a new project we're doing - my "supervisor" (technically only, he doesn't really supervise much) is writing up a doc documenting the scope and business processes that the thing I'm building is going to revolve around. He's not trained or educated in software development or web development or anything similar at all, so the standard of the documentation might vary - but he is actually very good at identifying and describing processes - I guess I wish he did more of that sort of stuff for new projects. We never even used to MEET, now we have bi-weekly meetings, and it's easier for me to get him to poke him in the right direction here and there. So going forward things should be a bit better.

You have to understand, I could be working 80 hour work weeks for the next 2 years and I wouldn't run out of stuff to work on. The union doesn't want people working overtime - there is no overtime. My boss wants me to flex my time. What do people want me to do?
 
You could ask to be salaried and then you can work all the hours you want. :mischief:

You are in a union and they don't allow overtime? Why do they want to limit your earnings?
 
Indeed it does! But the sort of documentation I have time for is inline documentation that explains what specific parts of the code do - or what specific functions do.

My job involves maintaining a large interconnected suite of tailor-made database applications written in an obscure language; the basis dates from the mid-80s (with constant growth by accretion since then) and one of the main programmers at the time was already near retirement age and had learned his craft in an even earlier age. An age when you made your source code as compact as possible because both RAM and hard disk space was expensive and limited as hell. As a result, not only are there no inline comments whatsoever in many of these programs, but even variable names are as short (and non-descriptive) as possible. You may spend a minute to consider the horror of figuring out how this stuff is supposed to work on those occasions when it stops working.

Partial documentation does exist. On paper, and it is about as updated and useful as you may imagine. I have ring binders full of it and even a grand overview of all the components' relation to each other (as things were in 1987, so pretty much irrelevant for today's system) which exists in the form of a huge sheet of brown packing paper with lots of little pieces of paper glued to it. Some bits of dot-matrix printouts, some typewritten pages, some handwritten notes, lines and arrows and marginal comments...

If I get hit by a bus tomorrow, the whole system is boned.
 
You could ask to be salaried and then you can work all the hours you want. :mischief:

I am salaried. I could ask all I want, there is no overtime. The best my boss can do is allow me to flex my time OR allow me to work longer hours without getting paid for it - and that would be illegal for him to ask me to do.

You are in a union and they don't allow overtime? Why do they want to limit your earnings?

Because it's a public institution with very tight budget constraints. This isn't a private company. There are positions on campus that allow overtime, such as caretaker positions I believe, but my type of position does not allow it... which is fine by me - I took on this job knowing very well about the "no overtime" thing. I work 37.5 hours a week and that's it. After my 7.5 hours a day I go home. If there is more work to be done than my position can accommodate - that lies squarely on the shoulders of my superiors. Either they can hire someone to accommodate the workload, or figure out how to get some of it off my back. There are no other options.

I took on this job knowing very well how much I would be making and what hours I would have to work. My employer is in the same position. There is no injustice happening here.

Leifmk said:
If I get hit by a bus tomorrow, the whole system is boned.

Your story reminds me a bit of when I used to work with COBOL code. I was at a company doing that for 8 months and my job was basically to upgrade several "programs" to a new data file spec. Well.. there was 0 documentation, I had to figure everything out myself, while at the same time learning COBOL. I hate COBOL now.

Here's to neither of us actually getting hit by a bus though..
 
I am salaried. I could ask all I want, there is no overtime. The best my boss can do is allow me to flex my time OR allow me to work longer hours without getting paid for it - and that would be illegal for him to ask me to do.

Because it's a public institution with very tight budget constraints. This isn't a private company. There are positions on campus that allow overtime, such as caretaker positions I believe, but my type of position does not allow it... which is fine by me - I took on this job knowing very well about the "no overtime" thing. I work 37.5 hours a week and that's it. After my 7.5 hours a day I go home. If there is more work to be done than my position can accommodate - that lies squarely on the shoulders of my superiors. Either they can hire someone to accommodate the workload, or figure out how to get some of it off my back. There are no other options.

I took on this job knowing very well how much I would be making and what hours I would have to work. My employer is in the same position. There is no injustice happening here.
Ah...your salaried. That explains the no overtime. If you said it earlier, I missed it. And in most university settings, there is no incentive to work beyond your allocated hours unless you are a tenured professor hitting on coeds. All is right with the world. :)
 
Speaking of coeds, are those just girls who participate in coed sport leagues? Or is that just any girl on campus who is a student there? Because either way, now that you mention it, I should probably be hitting on more members of both groups..
 
I worked at an aerospace manufacturing firm and the engineers, while not given true flex-time, were given a huge amount of leeway to come and goes when they pleased so long as they got their hours and their work done.

The same was not true for people actually doing the manual manufacturing - who would be docked points if they were so much as a minute late.
 
So in Canada is it common to have salaried employees who also get paid an overtime premium rate?

In the US, if an employer pays someone a salary it is usually because they are classified as "exempt"* from overtime and thus not entitled (or paid) overtime wages. They work 72 hours one week and 40 the next, they get the same 2 week paycheck.

*rightly or wrongly...often wrongly
 
Back
Top Bottom