I am failing at work

I work for a software company that makes custom software for corporate clients as well as providing web hosting and email.

My background is in software development in a business environment, specifically using Visual Studio .NET and SQL Server.

I should be happy in this job but I am not, for the following reasons.

[ol]
[li]This company is small - it’s just the boss and myself. My boss works permanently on a large customer’s site, and I work on another customer’s site.[/li]
[li]The business phone is diverted to my mobile phone. This means that I handle all support calls 24/7. Most of the support calls are due to problems sending / receiving email or problems with web hosting. I do not have enough knowledge to deal with these problems effectively and since my boss is always working on a customer site he is not able to provide me with adequate training. To make matters worse his attitude to customer support is poor. He sometimes tells me to ignore a particular customer support request. But it’s me who has to deal with increasingly angry customers on the phone, not him. And it’s just not in my nature to just ignore customers. Being a small business with a small customer base means that some days we get no support calls. But other days we can have 6 or 7. I know that even 6 or 7 support calls in a day isn’t much, but when you consider that my main job is software development and that I don’t know how to handle the support requests it becomes a major problem. I have not been able to pick up how to deal with the support problems on the job either. Most of the email problems do not seem to have any cause. I email my boss when I get a support call. He will either ignore my email or tell me which server to check. But there is never anything wrong on the server. His next piece of advice is for me to tell the customer that there is nothing wrong and “it’s not our problem”. I will not tell a customer that. The next day the email problem will have resolved itself. Until next time. Some of our customers have this happen every few days. A good example is a customer whose web site search feature does not work properly. My boss wants me to ignore this support request. How does that work? Do I now have to look at the incoming number on my phone to avoid taking a call from this customer?[/li]
[li]Writing software requires a lot of concentration. When I get involved with support calls that I cannot handle my concentration is gone. I feel agitated and even depressed for the rest of the day. My productivity as a programmer is greatly reduced as a result.[/li]
[li]The software I am working on at the client’s site is complicated. I am making enhancements to existing software systems that incorporate a Windows desktop application, a website, a web service, and a Windows service. The code is well structured into tiers and classes, but these classes are riddled with old commented out code. In some cases there are more lines of commented code in a class than live code. To make matters worse some dumb things have been done that make the software unreliable. For example, many functions contain error handling in which the error handler does nothing. It does not display or log an error message, it does not allow the exception to bubble up to the calling function, but it does allow the function to return a value of True (success). So in other words the existing source code is a nightmare and apart from a couple of half hour meetings with my boss each week I am completely on my own.[/li]
[li]Deadlines were set for each development task. I have missed all of them by a long way. In the full year I have been here I have not delivered any of the four software upgrades scheduled. The customer is not happy.[/li]
[li]To try and make headway with the software development I have been working extra time on weekends. This job has taken over my life.[/li][/ol]

My family tell me that I should look for another job and then just resign. But how do I look for another job when I am at work all the time? Also, I actually like my boss and can see that he is busy on his customer site, and that is why I get little help. And I worry that if I leave I could ruin his business - he would lose all of his staff (i.e. me).

I know not what to do, but this cannot go on for another year. It’s not good to feel like a failure.

Wow, that sounds like a really stressful situation.

If you’re not already, start saving up a little nest egg that will help get you by 3 months or so in case you decide to bail on this nightmare without anything else lined up.

I don’t think you are failing. I think the company is failing, and you’re doing your best but at the end of the day the fate of the company is up to the boss. For starters, if you are going to stick around you should try to convince your boss to hire a support person, at least part-time. It sounds like this will be a tough sell based on the attitude you describe him as having toward support.

I work for a small software company myself (it has 80-90 employees, which I guess seems huge compared to yours) and right now I’m one of the tech support bitches but I have aspirations of eventually moving up to the development department. But they really are separate jobs. There are also QA people, so if you are going to make the case for this to your boss you could put it in terms of rolling support & QA into one job and letting the new hire handle all of that, and maybe even some administrative functions to boot.

You are not a failure. The company is screwing you over. Your boss probably doesn’t realise it.

You need to tell your boss all of this. Just take your post, remove anything personal or critical, and give it to the boss.

Before this, you need to document time taken on support calls, customer complaints, etc. so you have data to back up what your boss will probably think is you whining.

And you need to propose a solution when you discuss it.

IMO your company’s best solution is to get a customer support person in too. There’s clearly too much work for just the two of you.

That said, there’s a huge red flag is the “it’s not our problem” comment. If this truly is his attitude, and you can’t bring yourself to reflect that level of suckitude towards customers, I suggest you start looking.

Cut back your hours to something more realistic. Yes, your output will suffer, but you’re leaving anyway.

Not your problem. He may be a nice guy, but he’s certainly not making an effort to look out for your well-being. Why should you reciprocate?

I may be missing something here, but it sounds like you’re caring more about the company than the boss does. Why? True, it feels bad when customers yell at you, but if the boss says screw the customers, screw the customers. If he doesn’t care that you’re missing deadlines, then blow off the deadlines. He knows what’s important for the business at any given moment. Just sit back and follow his lead.

Software is first and foremost about making money. Sadly, sometimes customer satisfaction doesn’t need to enter into it for a variety of reasons.

You are more important than this company is. Brush up your resume and start it circulating.
Then have a heart-to-heart with your boss about the stuff you’ve noticed. Go ahead and tell him that you think he is a good guy and you know he cares about his business. Therefore, he needs to be aware that blah, blah, support calls interfere with you’re getting other work done. Ask him to help you figure out what can be done about it.

If the response you get is not supporting, go ahead and start following up the leads your resume is generating. Also start backing down on spending loads of your own time on company business. Unless you have more than a paycheck and loyalty invested in this company, the projects and deadlines are not worth your personal time investment.

I don’t know if it would be possible for you to turn off your phone and don’t open you email each day until you have logged 4-6 hours on your development tasks. If the client doesn’t like it then tell both the client and your boss that they must make a decision as to what your priority should be. They might want it all, but they can’t have it all and you too.

Sorry you’re going through such a tough time. Since people seem to be coming up with some good advice already, I’m going to move this to our advice-giving forum, IMHO.

twickster, MPSIMS moderator

Sounds similar to my position last year. I was hired as a project manager but then my entire team was moved to other projects in the company, basically forcing me to do the work of 4 people. And that doesn’t include having to learn all the code that half a dozen people had built over several years. Fortunately much of those problems were resolved once the project went live and we hired a bunch of people (which I had to do on top of my actual job of doing the work of 4 people).

Really it is important for you to communicate these issues to your boss in a constructive way. This is often difficult for computer programmers as they tend to be extremely introverted. Often management doesn’t really understand how long it takes to perform these tasks and assume everything is ok since the developers are just quietly coding away.

This. If you want advice on how to talk to your boss about all this (and I agree that talking to your boss is a necessity here!), this gal has her head on straight: http://www.askamanager.org/ She’s from the software industry herself. You might have to poke through her site to find advice relevant to your situation, but I think she’s got a very good no-nonsense view point.

Honestly, it sounds like your boss has some pretty unrealistic expectations. He might be able to do business that way (ignoring deadlines and upset customers), but it sounds like you can’t. That is not a weakness! I’d call that ethics, actually. I’m horrified that he expects you to be support but won’t train you for it. Does he think it’ll just go away if he ignores it?!

It might be worth sending out some job applications and seeing if you can land a couple of interviews even if you’re not sure that you want to leave your current job. Getting a realistic picture of your options would be a good thing right now. Despite the massive unemployment rates, my company is struggling to find competent, qualified programmers. My impression is that most other companies in the area and possibly the nation are having the same problem. Don’t be afraid to look. (Given what you’ve said about your boss, I wouldn’t be surprised if he’s shorting you on salary, too. I like glassdoor.com for figuring out the going rate for my skill set.)

Good luck, and let us know what happens!

To reiterate, why is that your problem?

From what I can tell, the o.p. is getting paid one salary to do at least four jobs:
[ol]
[li]Programmer[/li][li]System architect[/li][li]Round-the-clock customer service[/li][li]Manager for all of the above[/li][/ol]

Given that workload, lack of management support, and no training or guidance, it isn’t surprising that you are overwhelmed and non-productive. Your boss may be a nice guy and a hard worker, but he clearly knows fuck all about running a company, organizing and prioritizing, or dealing with customers.

You need to pick one or two of those jobs and let your boss worry about the others.

Stranger

Well, I work for a small software company too, and from what you’ve described, your job is pretty much par for the course, especially when you get down to the really small companies.

Our company has 40 people. Everybody does more than one job. Nobody likes it. Most everybody remembers when we had 150 employees, and actual departments. We’ve pretty much done away with departments by this point – you’re either in sales or “tech center” now, no matter what type of jobs you do. (And note the bolded ‘s’ there.)

We partner with even smaller companies to get projects done, and some of these guys are 3 or 4-man shops, with employees wearing 4 or 5 hats. We frequently get into arguments with these guys, because they’re stressed out, and often only have one guy who can deal with our specific needs, and he has to help do development, QA, implementation, support, warranty and even some sales when it comes to POCs, demos, etc.

I’d say start circulating your resume at larger IT companies. I have friends who have left the company where I work. They’ve gone to much larger IT companies, and those companies still have traditional departments, clear task definitions, etc. The smaller you go, the more of a fly-by-the-seat-of-your-pants, become-an-instant-expert operation it is. Once you’re well and truly looking for something else and you begin to have confidence that something will happen for you soon at one of the bigger firms, let your boss know how you feel. Maybe he’ll make changes, and you’ll wind up staying, but I doubt it. From what I’ve seen of small IT shops, he probably doesn’t have a lot of options.

Good luck.

Thanks for the good advice everyone.

I will be looking at making a change in the new year. I may even look for a radical change away from working in I.T. altogether. I don’t feel very career oriented anymore, and would rather work to live instead of the other way round.

For what it’s worth, Imasquare, to my mind you’re not failing – you’re having trouble doing a job, that’s true, but it’s almost completely dissimilar to that job you expected to have. I get that it’s a small company and we all have to wear a lot of hats, but providing 24-hour tech support, regardless of volume, is a huge responsibility – adding it after the fact to a software developer is really rough.

If you feel that you can, be honest with your boss. He may simply have no idea of how much you’re struggling. But I would start looking for another job, too, while you pursue this. But pursue it anyway. Give the guy a chance to fix it. Ask him to meet with you and explain your concerns. Come prepared – don’t talk about how you feel, but talk about how it impacts the business and your ability to do your job.

Speaking as the tech support person for a small software company – a lot of people here just have no idea what the reality of support is like. You have to pursue them. I had one senior developer who wouldn’t look at any issue unless the phone was ringing off the hook. “How many people are affected? A couple? Ignore them, it’s not pressing.” But that’s not reality. Support gets their information, at least in part, from development, and we can’t wait until things are at crisis level.

I eventually changed this philosophy by continuing to press and pursue. I don’t let support take a back burner. Don’t let him pass the buck – say “Okay, so you’re saying to refund this customer’s money and send them away?” There’s no such thing as just ignoring the person. There has to be an outcome. The outcome may be “Sorry, that won’t work” or “It looks like a bug but it’s unlikely we’ll fix it for one person – sorry, want a refund?” but it’s a resolution. I don’t always get the answer I want, and neither does the customer, but I get an answer – and a lot of times, I learn something, too. Fixing a problem is great, but either way, if you learn something, that builds confidence – and that horror of dealing with people and not knowing what to do slowly goes away. Eventually, you start going “aha, this sounds a little like this other problem. Let’s try this!”

All that said, it sounds like they need more staff, based on the workload. You need to put your foot down about the extra time – you can’t just keep working more hours indefinitely, to solve every problem. Again, make it your manager’s problem. Work with him, but explain you are having problems keeping up and ask him to work with you on fixing it. Maybe if you had better support from him, and more training, you could be more efficient? One thing I did early on was meet with my boss at least each day (phone would work) to talk about cases I was having trouble with, or where I didn’t feel I gave good support. He’s your manager – he should be managing you.

If all else fails, maybe it’s not a good fit for you. Maybe your boss isn’t wanting to collaborate with you or isn’t realistic about what a single employee can provide. Heck, I left my last job in large part due to an “Oh, by the way, you’re on call all the time with no on-call pay” surprise after I was hired, and other things way outside the job description that I didn’t find reasonable, and they weren’t willing to bend. For your own protection, start looking. But I’ve definitely felt overwhelmed like that in my current job, and it got better – when I spoke up. I was too quick to internalize problems because I didn’t want to be perceived like I didn’t know what I was doing – but I finally realized that most smart, capable people get to be that way by asking questions and being inquisitive. Even star employees can’t remember every previous case, every solution, every trick, every process. You need help, and that’s okay. When I started coming out of my shell to ask and prod and push for better support, I didn’t get the negative reaction I expected – quite the opposite. Everything got better, and if your boss is a good boss, it should for you too.

I would recommend that. I’ve felt that IT is a shitty field to be in ever since I enrolled in business school.

Also keep this in mind. If you are the only one in the company who can perform the work of 4 people, they don’t really have a choice if you decide not to do something. What are they going to do? Fire you?

Are you still getting a paycheck?

If so, just keep doing the best you can until told otherwise. The lack of resources to meet the stated goals is a management failure, not yours.

I don’t count it as failure when you’ve been deliberately set up to fail.

I was in a similar position. I have a front-end web background and suddenly I was being asked to do Coldfusion programming (I was actually told to recreate Google Maps once - boss said that if Google could do it, I could). It was so overwhelming and I felt like a failure because I was producing code that sucked and I was always going over budget.

Then I got laid off, because apparently if the company is losing money by trying to shove a square peg into a round hole it’s my fault.

Anyway, I was just about ready to leave the industry totally, but I gave it one more try and ended up at an awesome company.