I got the job as a Consultant in a firm that has 3 other programmers. My job is
ID: 651413 • Letter: I
Question
I got the job as a Consultant in a firm that has 3 other programmers. My job is to rewrite all the old system in Java, Spring etc but the staff programmers only know perl and the manager does not know any programming.
I am trying to get them to understand that I have 6 projects to rewrite here but no one has design docs or spec. the staff programmers never had to write any documents. Plus I cant get the manager to understand the new java tech stuff.. he keeps asking some of the staff for views on things but the staff don't know it or understand it.
Where do I go from here to make the manager understand that the staff programmers or someone has to write a design document so I know what to build. or if I have to write the documents how do I get the information?
Explanation / Answer
Seems kind of odd that the staff don't know the platform you've been asked to re-write their work in. What happens after you leave? Who will support your work?
So you've got a complex system that doesn't have proper documentation, and you must re-create the system in a different platform. What I would do, in your position, is to identify the single person who must "sign off" on the new system. From there, do some reading on User Stories to identify how to break requirements down into bit-sized chunks that can be described in plain English. Their format is something like "As a USERROLE, in SYSTEM X, I want to ACCOMPLISH ACTION so that GOAL IS MET.
To further explain a User Story, you add in 'success criteria' in the format of "Given when CONDITION then OUTCOME" to explain what happens with different actions inside the parent User Story. This is a decent way of breaking out functionality into pieces that can be understood individually, and you can get help writing different Stories from different groups (just make sure the top-level person who signs off on the work stays the same).
So get all the old functionality of the system re-written as User Stories, then ask the project owner if there's any NEW functionality that they want in the Java version. Add stories to satisfy that, if there's any, and then start coding.
Basically, you need to be able to expose the staff programmers' unhelpfulness. Get the project owner to require that they provide you with the Success Criteria for some of the Stories, so that if they give you crappy input, you can just hold that up as your official requirements. Anything they leave out will be their fault, not yours.
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.