0

The situation is that I inherited a large peice of code in the form an SQL Procedure which had complicated business logic and rules. Mind you this code is very dense and with exactly 0 comments. My job is to resuse this code and apply it to a different use case. I made efforts to understand and make sense of this the best I could given that the developer who wrote this is very non-comittal to giving any time to explain stuff and just assumes you know what he knows.

Regardless of that fact, I managed to make sense of solution 80% and I am currently in the process of extending. However the dead line is now approaching and now the developer suddenly came out of no where and said that this hasn't progressed far enough and now will just take it away from and start from scratch (or take what I made). Obviously my boss just wants to see the deadline completed. But this has made me angry. What should I do ?

EDIT: Will have a talk with the boss and explain the pros and cons.

  • 1
    Was this task given to you by your boss? And/Or does this other developer have the ability to control what you work on? – Peter M Jun 23 '17 at 16:55
  • I was picked up and dropped in the middle of an already on-going project which was 3-4 months in. The other developed needed to do other things. The other dev does not have the authority to assign me work. – smooth_smoothie Jun 23 '17 at 16:56
  • 2
    unacceptable is a very strong word. What would you do if it happens again? Are you willing to resign? If not, that is far from being unacceptable. And do not count on your boss being happy if you tell him, in these terms, how he should do his job (if he is a nice person maybe he will be willing to hear some advice from you). – SJuan76 Jun 23 '17 at 17:08
  • 1
    You don't get to tell your boss what is acceptable. – paparazzo Jun 23 '17 at 17:43
  • 1
    @Paparazzi - You most certainly do. However, you need to be prepared for them not being your boss immediately afterwards, and you have to find another. – Wesley Long Jun 23 '17 at 19:09
4

Focus on Business Value

Tell your boss:

  1. The code is complex/involved (do NOT insult it, just say it is "invovled") and you've finally figured it out and you would like to prove your knowledge by having a working solution,

  2. You are almost done with the changes needed anyway, which means it would cost more money for your co-worker to start from scratch,

  3. The small amount that is left is worth doing because now more than one person in the shop will know how to work with this code --- which provides flexibility to the organization (more than one person can do this work) and security as well (the "what happens if Bob gets hit by a bus" meme),

  4. It also means that more than one person can now support the SP and anything it touches, which improves response time for your team.

  5. Lays the foundation for you to take over more of these types of "involved"/complex SPs and help the team more.

Therefore, it would be most cost effective and a big win for the team to have you finish the changes.

Do this in a business professional manner - no anger - just business facts that he can use when telling the co-worker why you'll be finishing the changes.

  • IMO Procedure was a terrible choice. The code is tightly coupled and This deals with billing so it would have been best practise to put this in Application code. – smooth_smoothie Jun 23 '17 at 21:08
  • Also good advice given here. Good compromise. – smooth_smoothie Jun 23 '17 at 21:54
4

Given that no-one with authority has taken you off this task I would continue to work on it.

However there seems to be a couple of things that we don't know

  1. If you can complete the task within the deadline
  2. If the other dev's new approach is warranted

As such I would mention this situation to your boss. It may be in the best interests of your company for you to continue working on this task, or it may been the best interests to let the other dev complete it.

In either case you need to let go of your anger. I understand that you have invested considerable time and effort to complete this task, but work is a team effort and your anger seems to be rooted in keeping this work to yourself.

  • 1) is doable if the Developer explains the 20%, which is he is not co-operating on so automatically 2) becomes true. See my question. – smooth_smoothie Jun 23 '17 at 21:09
1

If you studied the code and understand it at a large degree (which seems so from what you are saying) then evaluate strictly if you are able to convert the stored procedure into some programming language you are very good at and your company uses within the deadline. From the post it is not clear to me if using a stored procedure was the correct approach in the first place and if you manage to migrate the logic:
1) you could meet the deadline
2) you could be doing good to your company by migrating code that is not easily maintainable into something easily to extend and maintain by anyone(again you have not specified why it was written in stored procedure).
It might seem to you difficult to do but keep in mind that quite often rewriting a piece of code for a new task is much faster than trying to debug and adjust an existing piece of code.
My 2 cents

  • Thanks however there is also an SOAP API of an vendor that is involved that I would have to rewrite the logic of so it just not feasible. – smooth_smoothie Jun 23 '17 at 21:06
  • @smooth_smoothie: I don't understand. You can call a SOAP API from anywhere. Why is it a blocker? – smith Jun 23 '17 at 21:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.