I work in a softwarehouse. We code by spec for various clients (SMB or EP companies mostly.)
I joined the company five years ago (my sec. job after finishing my SE studies) and I am in good terms with everybody, love my job, and the colleagues in my department are mostly professionals who excel at their jobs. Our workload isn't small, but we manage and we usually can solve problems and work out who's responsible for what, help each other and share knowledge. We usually resolve everything on employee level, not involving superiors and executives.
Except there is this person... I'll call them H.
H. is a senior employee and a team leader and has quite a lot of responsibilities, but it's really the standard here. (We all work hard, 10-12 hour days are quite common, and we often 'allowed' by our department head to work on Saturdays, that is, 6 days a week when there are version updates and other deadlines).
The best word to describe H's work method is 'chaotic': while holding a wast knowledge about the system, when coding H. is really messy. (H's end result looks like spaghetti, have looooots of bugs and their subordinate (my friend) is always complaining privately that she always needs to clean up H's messy and buggy code.)
Now there is an optimization project coordinated by our department head (business school, no SE knowledge) and the planners in the committee were H, my team leader and the QA TL. So at the first step of the project, I wasn't involved. They decided on a course after a few meetings, wrote a specs and then tasked me (among others) to write part of the project. I found a few logical errors in said specs and pointed them out to the committee. They weren't happy I found errors in their plan, but after that, they started to invite me to their meetings and asked my advice a few times, but not very nicely. More like: What's your opinion? We hope you didn't have any 'objections' this time? (I actually found a few more errors, and also pointed them out. Some were taken into consideration, and some waved off.) It was really easy to find errors, as most of the data collecting and conclusions were made by H, and well... they're not very organized.
Now, we are in the middle of the alpha and a problem had arisen about which I'd warned in the planning phase. H. then laughed it off saying : "Those are really negligible cases, we don't need to take those into consideration. She's nagging about insignificant things." Now this 'insignificant thing' came back to bite H. in the ass as a really serious problem that needs to be addressed. This in the part of the project H. is responsible for. H. and their team is supposed to take care of it. But it's a really tedious bug at this stage and not easily solved. Had they taken it into consideration and planned for it in advance as I advised, it would have been easier to handle. Now it is a nuisance, needs lot of hours writing it into the already existing and tested code etc.
H. insists that i should do it. It doesn't make sense at all because:
*H's team is responsible for that part,
*most of the CRM's,clearances and permissions of accessing and updating that part of the project are on the name of H's team,
*i already did my part on that project and moved on to other projects, which too have deadlines and i am 'fully booked'. To help her out, I'll need to work weekends and nights in addition for my own work.
But i helped out H. & team a few times in the past so they're pretty used to it, so much so that H.demanded I do it. When I refused (wrote a mail to H that it's their responsibility and that I am busy with my projects, besides, i don't ask others to do my work so H shouldn't either) H. sent my mail to the department head complaining that I - a minor and relatively new employee - refuse to do my (!) job. The department head (who has zero knowledge about coding and our responsibilities, really) asked me why i refuse to do what a team leader asked me to do and said she did not like the tone of my mail. So tomorrow we (H, my team leader, the dep head and me) will have a meeting whose responsibility it is really.
Now, my team leader is a nice guy, but he worked with H for 15 years. They started together as rookies and they're good friends. He quietly said to me that i am right, but he probably won't support me against H publicly and he is scared of the dep head anyway.
Now the dep head wants results and quick. She probably won't care who does it as long as it is done. The department head herself leaves sharp at 16:00 on the days when she even bothers to make an appearance, and the first and last day of the workweek she usually takes off, but always emphasizes how important for us to complete our projects, even if overtime working is needed.
Guys, give me advice how can i handle this situation? I want to stay there, i really like my job and my colleagues, but i don't want to be exploited by H. and the dep head and i also have a life beside my job.
edit: unfortunately "I'm working full time on something else. If you need some of my time, speak to my boss.*" is not an option. we often work at several big projects at the same time and the dep head would simply say i should find time for this project too. The dep head is the one who decides in this case, not my boss :(