Slashdot Mirror


Solutions for When Managers Hijack Your Code?

Chiggy_Von_Richtoffe asks: "Two friends of mine work at a warehouse distribution center. First, they are customer service representatives, not paid developers. Secondly, the are developing the software in their spare time to make their jobs easier using MFC and HTML. Their bosses have already talked up the idea behind their backs, and then came back to them with a deadline to release the (in-house) software, on a national level. However, they haven't had time to release their first version, and the bosses don't even know what the software can do nor even what it looks like. There is a feeling that the bosses may pat them on the head and run with the software for their own promotions. What should they do?"

30 of 108 comments (clear)

  1. hwah? by yagu · · Score: 5, Insightful

    I'm not even able to figure out what question is being asked here.

    • are the programmer upset something they developed in their spare time is now being required and with a deadline? (and what does "in their spare time" mean?, it can have implications over different discussions (IP, etc.))
    • are they upset because now it's going "national", (and what the heck does THAT mean?)

    It sounds to me like they've created something, probably wanted to show the bosses to get some love pats (btw, DON'T DO THAT! HAVE YOU NOT BEEN READING RECENT /. ARTICLES?). And now, they're upset because the bosses want to run with the stuff. That's kind of what happens. Sounds like the "service reps" were a little naive, and the bosses were greedy and stupid.

    (Aside: I used to work in IT, and if service rep people wanted to roll their own, there was little to be done to stop them. But PHB's who were gushing over these home grown "apps" that were successful talking the rest of the company to adopt and deploy ALWAYS ended up costing the company tons of money.... the apps were never scalable, maintainable, compatible with anything else. I'll allow that it's possible but I've seen this kind of scenario many times, and they've NEVER brought positive ROI.

  2. Bargain by cheeseSource · · Score: 5, Insightful

    If they're doing it on their own time then they have control over it. They should license it to the company.

    --
    (Sponsored by cheeseSource for President 2012)
    1. Re:Bargain by 0kComputer · · Score: 4, Insightful

      If they're doing it on their own time then they have control over it. They should license it to the company.

      Unfortunately a lot of companies have IP clauses in ther contracts w/ employees. For example, I used to work for IBM and they had first dibs on anything I developed, whether it was on company time or not.

      --
      Top 10 Reasons To Procrastinate
      10.
    2. Re:Bargain by Stocktonian · · Score: 2, Insightful

      LOL
      That's a good one. Without knowing which country the OP is talking about we don't know exactly what the deal is, but for a lot of countries everything created whilst working for your a company becomes property of the company. Even if it is in your own time. The only exception is when your job has no relation to your "hobby project". For example, writing some software while working as a waiter.
      This clearly isn't the case as the OP states they are writing to make their job easier. It's sad but that's just the way things turned out.

      --
      XePhi Computers sell really cheap Linux CDs! http://www.xephi.co.uk
    3. Re:Bargain by jfisherwa · · Score: 2, Interesting

      Keep in mind that these employees aren't developers and it is likely the company had no intention to ever put them in such a role. Licensing it to the company is exactly what they should do.

    4. Re:Bargain by Anonymous+Brave+Guy · · Score: 2, Insightful
      Unfortunately a lot of companies have IP clauses in ther contracts w/ employees. For example, I used to work for IBM and they had first dibs on anything I developed, whether it was on company time or not.
      In most places, that's unenforceable.

      In that case, a surprisingly large number of people seem to get screwed by unenforceable contractual terms. :-(

      When my employer (after being bought out) tried to stick "all your IP are belong to us" terms into the new contract everyone got, at least half the dev team expressed their negative opinions pretty vocally, and the changes from the previous terms in this area were dropped.

      On the other hand, if the stuff you've developed is on company time, using company resources, or clearly related to your role at the company -- and it sounds like the latter applies here -- then I would expect the employer to have first claim over it, even in a contract that says anything other than those categories is yours.

      --
      If you disagree, post your argument. (-1, Overrated) isn't your personal censorship tool for views you don't like.
  3. I wonder. by Creepy+Crawler · · Score: 3, Funny

    Lemee see.. People are taking your projects behind your back.

    Those people havent tested it upon anybody.

    Those people probably havent debugged it well.

    Those people arent qualified (Customer service reps).

    The managers are supporting them. ... What in the hell do you think?? RUN, and RUN QUICKLY.

    --
  4. Simple solution by Digital+Dharma · · Score: 5, Interesting

    1. Make grandiose promises to inept managers regarding capabilities of software

    2. Play Xbox until deadline for "RTM" arrives

    3. Deny and involvement with manager's pet project.

    4. Laugh uproariously as former managers are escorted off the premises by security for their complete and utter failure to meet deadline

    Personally, I would do my best to make them look as stupid and inept as possible. You might just be doing other underlings a favor in the long run. They'll be much less likely to use subordinates in the future.

    --
    End of Line.
    1. Re:Simple solution by Madoc+Owain · · Score: 3, Funny
      1. Make grandiose promises to inept managers regarding capabilities of software

      2. Play Xbox until deadline for "RTM" arrives

      3. Deny and involvement with manager's pet project.

      4. Laugh uproariously as former managers are escorted off the premises by security for their complete and utter failure to meet deadline

      Step 5: Profit!

  5. Their Time or Company Time? by HighOrbit · · Score: 4, Insightful

    If it is done on their own time and dime, then they should register a copyright and use it to bargin a payraise/promotion.

    If they are doing it on company time, then it probably belongs to the company, and they are probably screwed.

  6. Contract by x00101010x · · Score: 3, Interesting

    If they developed it on their own time (and preferably at home, not using company computers), then it's their IP. It's not part of their job description, and it's very unlikely they're getting paid enough to be developing software on a work-for-hire basis. So...

    What they should do is draw up a contract/proposal, detailing the features, testing proceedure, launch proceedure, and compensation. If they don't actually want to do it, just put a huge price-tag in there. Of course, any price tag will probably make the manager balk as he/she probably thinks they're getting this new system/utility for the $9/hr they're already paying these guys.

    --
    DONT PANIC
    1. Re:Contract by gallen1234 · · Score: 2, Informative

      If they developed it on their own time (and preferably at home, not using company computers), then it's their IP.

      It's not quite that simple. If they did it in the office, using the company's resources, then the company probably has a claim. It also depends on their employment contract. Some give the company rights to any material including software developed by an employee regardless of when or where it was developed during the period of employment. You can argue that such terms are unconscionable and wouldn't stand up in court but asserting such a claim would be a long, painful and expensive process that would have serious negative career consequences.

      Of course, IANAL.

  7. Tell them it's GPLed by nicholaides · · Score: 2, Funny

    They should claim that it already released under the GPL. That should scare them off.

    --
    http://ablegray.com
  8. On every screen by tsm_sf · · Score: 2, Funny

    "WRITTEN BY JOE & BOB, Warehouse #5"

    Seriously... sit down with the boss and tell him your concerns. If he's a decent person he'll do something to alleviate them. If he's a shifty fuck then you need to realize that getting credit for software is not your largest problem.

    --
    Literalism isn't a form of humor, it's you being irritating.
  9. What I would do... by paladinwannabe2 · · Score: 4, Insightful

    If I developed it on my "own time"- when I wasn't at work- then I would tell the managers that it's my software, and would be happy to liscense it to them, once I'm finished with it and have opportunity to test it. If I developed it "on company time when I was bored anyway"- then I would tell the managers that quality software takes time to develop, and if the deadline is unreasonable, warn them you won't be able to make it. If the manager(s) try to steal the credit, intelligent people will still realize that the managers didn't write the program. Also, if it's good enough to go to the national level, then the managers deserve some credit for recognizing that anyway. What sort of idiots the managers are will affect what will work and what doesn't. Your friends will know beter than me.

    --
    You are reading a copy of my copyrighted post.
  10. WTF? by Anonymous Coward · · Score: 3, Insightful

    Wow...this sounds like so much bullsh*t.

    1. MFC and HTML? WTF? What does that even mean? How are MFC and HTML integrated at all?

    2. "In their spare time?" What does that mean? Their "spare" time at work? Too bad. If you worked on something on your company's time, it is theirs. If you worked on it on your own time, it is yours.

    3. Their managers don't know what the software can do but they're "talking it up" and releasing it across the country? Yeah....that's likely.

    4. How can managers "hijack" your code? You work for them. Anything you do in their supervision is their responsibility. How is that hijacking? They may "run with it" for their own promotions? WTF!!!???? Instead of what? Promoting these guys to vice-presidents? Get real. Do you really think these guys should be revered as gods throughout the company, for writing this? All you will ever get, even as a developer, is a salary, and perhaps, if you're lucky, a "good job". You will NOT be promoted for coding anything.

    Man, I am so tired of these whiny questions..."My boss blah blah blah". It's a job. Grow up, and figure it out.

    1. Re:WTF? by Profane+Motherfucker · · Score: 2, Insightful

      And let's not forget: "What should they do?"

      How about keep your fucking mouth shut until you actually have something? Sounds like the people who are really talking it up are the very people bitching about other people talking it up.

    2. Re:WTF? by danielrose · · Score: 3, Funny

      1. MFC and HTML? WTF? What does that even mean? How are MFC and HTML integrated at all?
      Dear Employee,
      You will know that MFC and HTML form part of our synergy of vertically integrated products, allowing a shorter development timeframe, an empowering, scalable and future-proof across multiple client-based platforms.
      This is just the tip of the iceberg in our results driven proactive marketing plan.
      We're really pushing the envelope here, and it seems you are out of the loop. We really need you to ramp up your knowledge base, to facilitate the kind of leverage we need to monetize our best of breed product.
      If you review our vision statement, you will see that we are aiming to be the client-based, goal-setting, bleeding edge, result-driven leader in the information superhighway of the future.
      Please keep this in mind.

      --
      i hate pansy republicans
  11. Don't DO that! by Bastian · · Score: 2, Informative

    Seriously. Don't develop apps for work in your spare time. Just don't.

    You may think of it as a fun side project, but your boss will invariably think of it as overtime. Nowadays, it doesn't make a damn bit of difference if you did it from home, either. Everyone brings work home with them all the time, so if you try to argue that it wasn't something you did for work because you did all the programming at home, your boss is either going to laugh at you because you've done plenty of work at home for him in the past, or, if he's clueful, he's going to laugh even harder because he knows that installing this software on the company servers is not something you can do from home.

    Now I'm all for putting limits on what work can ask you to do on your personal time, so the boss shouldn't expect you to start working mandatory overtime to complete this app, but if he wants to shuffle some duties around and make development of this your primary responsibility, well, tough luck, but you were asking for it.

  12. A developers, and managers view point. by voxel · · Score: 2, Informative

    (I've been both, and currently am operating as both at the same time).

    Assumption I am making:

    1) There is a likely chance that you worked on this software durring office hours, after all, you developed it for this specific job. You are not a contractor, you are a full time employee. This makes it difficult for you claim it is yours because you developed it for your specific job. The only thing you really have going for you, is you are not a "developer". The assumption I will make here is that the company owns it, because if they see value in it, you'll get threatened with lawsuit if you claim you own it now. You probably signed a non-compete agreement anyways, saying you can't work on company related things at another company (OR YOUR OWN TIME). If its company related, they own it no matter what. Sorry.

    You should expect recognition for your efforts outside your normal job. You could even get a promotion, into development, or maybe a bump up on the salary pole in customer service. As an engineer, I would actually expect something in return for this effort, if it turns out to be a large scale solution to a bigger problem. If you don't get anything, what the hell, you have a customer support job, quit and now go get a development job with this on your resume.

    Your manager has a bigger objective, most "managers" have fallen into the trap already and are trying to climb the corporate ladder. He will be trying to get a big raise or promotion.

    It makes more sense for a manager to get the raise/promotion, after all, he is responsible if everything goes WRONG not the engineer. Alot of people assume the opposite, if everything goes right, reward the engineers, but if everything goes wrong, the fire the manager. This isn't the case, and that is how its observed from above. Most "engineers" observe it "I get the reward if everything goes right, and my Manager is fired if I fuck up", that's NOT the case. Sorry.

    Your case is fuzzy, because the Manager wasn't originally responsible for delivery of an alpha-product you've created, however may turn it into a real-project, with the VP's or company owners knowing now whats going on, they may now assume responsibility if it fails for lost time and resources. However, you have to look out for what really happends, it could be your managers keep it secret from the guys above until you finish the project, that way if it fails, they can just pretend like it never occured and no harm done. If it succeedes then they say they did this big thing for the company and pat you on the head.

    --
    Modesty is one of life's greatest attributes
  13. Let's get the blatantly obvious out of the way. by An+Onerous+Coward · · Score: 3, Interesting

    Ahem: "They used MFC? Then they deserve any abuse they get."

    I'm sorry, I just couldn't resist. Now, on to the thingy.

    First, I'm going to work under the assumption that "on their own time" actually means "during down time when the reps were sitting in front of their computers but not actually taking calls." If that is the case, it will be hard for them to claim copyright on the application, because it was done on the employer's time and using the employer's resources. That just strikes me as the most likely interpretation.

    Now, it's not fair for their bosses to be expecting them to do software developer work at phone jockey prices. When they set a deadline, this thing stopped being "a fun way to spend down time" and became part of their job duties, additional duties which require skills that most of their peers don't have, and for which they aren't being compensated. That isn't acceptable, and hopefully they'll be willing to stand up for themselves.

    My suggestion: They should go back to these bosses, explain that their work up to this point has gone far above and beyond their actual job duties, and that if the bosses expect that work to continue then the coders should be rewarded above and beyond their actual paychecks. It's up to them whether they want this compensation in the form of money, a transfer to full time development work, prestige, scooby snacks, or glib promises that the bosses don't intend to keep.

    If they can strike a deal, great. Tell them to get it all in writing, then build the software according to the highest standards of which they are capable.

    But if negotiations fall apart, and the bosses come back with a "do it or you're fired" ultimatum, they're still in control. If they want, they can build InHouseApp 1.0, Teh Suck Edition. Random crashes, database corruption, an awkward, unintuitive interface... whatever it takes to embarrass the bosses who made such wild promises. Just remember that it has to be so sucky that the old way is far preferable, so they don't have to eat their own dog food.

    Or they can build it nicely anyhow, and hope that their work will gain them some recognition. I wouldn't suggest this option, though. There is no reason for them to make it easy for the bosses to take advantage of them. For the same reason, they shouldn't even consider trying to take ownership of the application. Don't give them an excuse to file a lawsuit. That means letting management have the current codebase, rather than stripping out all the comments and adding a few judicious memory leaks.

    Finally, in case of termination or threats thereof, make sure they know how to reach their bosses' bosses. They should have someone they can go to to explain their side of the situation.

    --

    You want the truthiness? You can't handle the truthiness!

    1. Re:Let's get the blatantly obvious out of the way. by hey! · · Score: 5, Insightful

      I agree mostly, but I'll part ways in a few places:

      If they want, they can build InHouseApp 1.0, Teh Suck Edition.

      This is a bad, bad idea. Never do anything better than the best you can do under the circumstances. You'll never have the circumstances to do the best you can do period, but at least try.

      I'll give you two reasons why. (1) you're not that kind of person. (2) it will come back to haunt you, either in job interviews, recommendations, or your some day in the future application to work on the team that maintains this when it's a multimillion dollar asset for the company (riiight).

      Much better, in the long term, to take the "You're fired" route, unless you're totally living hand to mouth.

      Finally, in case of termination or threats thereof, make sure they know how to reach their bosses' bosses.

      Here's an interesting social psychology result that was published a few years ago. They had an experimenter describe another person to a subject. The subject was later asked to describe the experimenter and many of the attributes of the person being described were attributed by the subject to the experimenter. It turns out the human mind has a "birds of a feather" wired in: losers associate with losers, slimeballs with slimeballs. So you see, you never, ever build yourself up by tearing another person down.

      At very least, the boss-bosses will conclude you're a loose cannon, and they'll be right.

      So, no. Don't contact the bosses bosses unless there's something going on that is illegal or will get the company into trouble. You never bring your troubles to anybody but your direct manager, and then only reluctantly. Everyone has their own problems and would rather think about them than yours. Managers are looking for solutions, not problems. People are positively blind to problems until a solution appears. So, you gotta solve it man to man, right here at your level. The only circumstances you contact any higher ups is as the cavalry coming over the hill, never as the scout bearing bad news.

      If you can't, and you are asked to do something you aren't willing to do, and you're sure the project has legs, then you resign, giving no cause at all for any dissatisfaction. This may do the trick in itself, but if not, then wait for your boss "Alice" to get in trouble. At that point, "Bob" realizes he's in trouble to. Then you approach Bob, and you do it this way:

      "Bob, I hear the project's in trouble. I feel bad because the whole thing was my idea originally. Alice was gung ho about it, I know, probably too gung ho. I explained this was going to be a problem, but I think she must have thought I was maneuvering for more money. I don't blame her because she was trying to do the right thing by the company, but I felt under the circumstances I couldn't get behind the project as it stood. So we had to part ways -- amicably I hope. But I still feel bad. I'll be glad to come in and discreet look at the situation to see if I can't help you get things back on track. No, no, don't worry about paying me, I've got plenty of paying work, and it'll only be a couple of hours, and I can't promise anything. But I do feel responsible."

      Now, isn't this a much more attractive scenario? Alice's perfidy and incompetence is exposed -- Bob has witnessed it with his own eyes. He also sees you're a decent upstanding chap. Alice has blamed everything on you since you left, but blaming problems on subordinates never cuts the mustard. She's been saying you're a slimeball -- if she only knew. You're not a slimeball, you're much worse: you're a cunning bastard who knows how to discreetly leave knives around where your enemies are most likely to pick them up and cut their own throats.

      And while you can't count on being invited back, if you are you're in the catbird seat. If the project goes down the crapper, it's still Alice's fault. Of course, the project may go on to be a roarin

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
  14. This story doesn't make much sense... by Kosgrove · · Score: 2, Interesting

    I agree with the previous poster that MFC and HTML are not particularly related. Either the submitter made a mistake in naming his technologies or a troll question got posted or something.

    However, let's assume that the story is true. Let's make another assumption that the problem the submitter's friends is not that management is taking what the developers feel to be their IP, but that management is trying to release something cross-company that isn't remotely ready for prime time.

    This seems to go against the general trend of suggested lies and deceit that I've seen in the comments on this article so far, but here's what I would suggest:

    Just be open with the business people - explain what you see as the consequences of them releasing this software with the current schedule, but stick to the facts and stay away from emotional or personal characterizations, like thinking about people as PHB's. Explain that the software is not documented or tested, and if they release unfinished software, it will probably be unreliable. Explain that the more critical the software is to the business, the more rigorously it has to be tested and documented. Explain that if they want to put this into production, they should have an experienced developer and/or project manager work out what needs to be done to get the software finished, and product a project plan, documentation, and most importantly, a test plan.

    But also explain that you understand there are business considerations external to the technical side and that you feel your role is to explain to non-technical people the technical impact of their options.

    That's what I would do.

  15. Just Do It by KevMar · · Score: 5, Insightful

    Lets assume that they did it at work and are now given a deadline.

    I say go for it.
    Let your boss know that you need to dedicate more time to the project and cannot meet the deadline with the interuptions of your current job.

    At 3/4 of the way finished send an email to your boss and copy HR on it asking to be reclassified with a different job title because the duties of your job have changed so much. (some companies call this a pay raise)

    Never say it is done. We all know that revisions will need to be made and bugs to be fixed. Give it a long beta phase. I bet you will get lots of visibility because of the project. Once it goes to the support phase, you boss will still be clueless and you will be called for everything relating to it.

    Now you have a internal project that the whole company depends on and goes to you for support. It makes your boss look good and gives you a great refference. You get exposure to the develoment process and customer side of programming.

    Its a great resume builder and I am guessing this is just a temp job anyway. So once it feels stable, find another job. Then you can make more money when they contract you to fix, upgrade, redesign, or want to scale it.

    Besides, if they are developers at heart, they would prefer to do the project than their real jobs.

    --
    Im a gamer, not a grammer major. This post is full of spelling and grammer mistakes.
    1. Re:Just Do It by dubl-u · · Score: 5, Insightful
      Its a great resume builder and I am guessing this is just a temp job anyway. So once it feels stable, find another job. Then you can make more money when they contract you to fix, upgrade, redesign, or want to scale it.

      Yes. These guys shouldn't be focusing much on getting internal corporate credit for it. What they can get out of this is
      • time spent on something that doesn't rot their brains
      • good on-the-job training
      • a slim possibility of getting real programming jobs in the company
      • a resume item that will let them apply for a programming job elsewhere
      • a recommendation letter that will get them seriously considered elsewhere

      But yes, their bosses will probably get a lot of the credit. Traditional corporations can be thought of a feudal empires. Once you're a knight with success in many glorious battles, the nobles will take you seriously. But a customer service rep in the warehouse equates to some peasant cleaning out stables. One day you might be a mighty knight, but for now you're dressed in rags and covered in horse shit, so nobody's going to listen to you. Make your bosses look good, and they can help you get promoted to squire. That's no great shakes either, but at least it's on the way to becoming a knight.

      And yes, I agree that this sucks, but hopefully it sucks less than spending the rest of your life doing customer service.
  16. Politics, job roles, and signing code by Cyphertube · · Score: 2, Informative

    Many arguments have been made regarding the fact that we don't know much about the circumstances of these individuals and what kind of contracts they may have, when they've been working on it, etc. However, there are some things we can probably ascertain.

    We do know that they are customer-service reps. Which means two very likely things. First, they were not hired for their programming skills, which means they are likely not being adequately compensated for this software. Second, they are probably not under a non-compete clause of any kind. While programmers and high-level managers are often put under such things (which in my experience don't hold up very well unless they are extremely explicit), customer service reps are RARELY if EVER put under such restrictions. Why? Because the industry knowledge is pretty well standard for most of those things, they rarely have access to real trade-secrets, and most of their skills involvin simply talking and entering data - mundane everyday stuff.

    The problem is that somehow they worked on software in their own time, at the company or not, and their bosses are going to try to make a credit claim. If they want credit at the company, they need to start writing documentation, documenting out the development process, the origin of the idea, and so on. Get those documents out to the right people and let them look over them. Put down where the project stands, how many hours of work they estimate they need to get to a completed project, and what a reasonable compensation level would be.

    Lastly, they should sign their code, so that when some stupid boss claims credit for it, they can point to the code itself.

    The big question would be whether the whole organisation is made up of jerks, or just their immediate bosses who might try to claim credit for it. If they don't think there is any fair management there, they should just stop working on the code, or write some psuedo-modules that make no sense and if implemented by someone who can't write code proeprly would eat the system, or else mess up the logic of the app for the uninitiated. Then they should quit and get better jobs.

    --
    Linux - because it doesn't leave that Steve Ballmer aftertaste.
    1. Re:Politics, job roles, and signing code by An+Onerous+Coward · · Score: 2, Informative

      Let's modify your last few suggestions.

      If the company is as riddled with jerks, then they already consider the codebase their property. From a legal standpoint, they're probably right. Any damage these developers do to the current codebase could be construed as vandalism of a company resource. If they decide to quit, or simply stop working on the project, it's already unlikely that management will find anyone who wants to finish it.

      They might be able to get away with it, because management isn't familiar with the app or the code as it sounds right now. But if I were them I would still play it safe.

      --

      You want the truthiness? You can't handle the truthiness!

  17. wiki by porkface · · Score: 2, Funny

    If the bosses are really that clueless, make it a wiki of all the stupid things those bosses have done and said over the years and "go national" with it.

  18. Similiar situation to mine... by singularity · · Score: 4, Interesting

    The company I work for currently has a home-grown solution/program in place. I use the program, and have found numerous bugs.

    I fix show-stopping bugs (since I rely on the program, and major bugs make my job more difficult) as they come up.

    I *really* want to do some more work on the program. Clean up the code (it is in PHP), comment it a bit, and fix some of the hacks that allow it to work to more permenant solutions.

    I am not a developer for the company, though, and do not get paid to do development work. As such, as tempting as it is, I only touch the code if a new release completely breaks things. [Yes, I think it is possible the sole developer, who I think got a small contract from the company teo develop it, is not a developer either, and probably does not QA on any release].

    Some things I could do would make my job easier, but I have no desire to do something "out of the kindness of my heart" for the company without some form of payment.

    Sometimes I feel greedy for my position, but I also reaslize that if I write a good enough program to make my job 10% easier or faster, the company would be more than likely to cut my hours 10%.

    I suppose that is a comment on company loyalty (going in both directions)

    --
    - (c) 2018 Hank Zimmerman
  19. Play the game by OSXCPA · · Score: 4, Interesting

    Okay, there is some back and forth over who 'owns' the code. IMO, you don't want to get into a pissing contest this way - the company can likely hire more lawyers, and make life crappy, even if you are ultimately the victor.
    Take the bosses aside, off-premises (lunch hour, after work) and have a candid conversation. They agree to a contract with you to code said software. Be nice and professional and all that, and don't threaten. If they refuse, tell them ok, they can have the thing as-is, but you won't work on it any more, since you don't want to be accused of using company resources for a personal project (which is what it is unless the company wants to pay for it). Then deliver the POS code listed in earlier post - the 'rigged demo' version. It should do something marginally useful, but as little as possible. If they gripe, tell them you hadn't gotten around to making it fully functional yet, as it was a 'personal project". This gives you plausible deniability. Playing stupid is one of the only defenses against a malevolent boss.
    Oh, if they do refuse the contract, find their competitor and offer it to them. Since your current employer refused it, it should be fair game, and they can't sue you over something they can't even identify.