This question come up from my Scholarship Application.How have you contributed to solving a challenge and to implementing change or reform? (Be specific and include: what aspect/s of your leadership knowledge, skills and practice you consider to be well established and effective; which people or organisations you worked with to solve the problem; and what creative methods were used.)
And here's my answer. Please give me a comment.
solving a challenge and implementing a change
As IT Professional, I have had the most remarkable challenge in my career stint when I was working at PT. King Jim Indonesia. I was given direct order from Senior Manager to manage the Payroll software to meet the latest Government Regulation. The software required updates including:
-Add a module to manage special employee's attendance
-Update on overtime & tax calculation module
I was working cross-sectioned with 2 other departments to manage these conditions (PGA Dept, Finance Dept). I invited their representative to discuss this condition in a meeting; in the meeting I explained the requirements before working on software updates. I divided them to do some jobs which is resulting the manuals of man power and salary calculation.
Meanwhile, after I had analyzed the software, I found that the software was developed with unorganized DB consisted with myriad tables with no table relations and normalization. The UI also was also very puzzling for users and did not arranged properly. The worst part, however, there was no source code making it impossible to make any modifications.
My solution for Attendance module was creating a Patch. I analyzed the DB based on data transactions because I needed to know which tables that are affected when a transaction was executed. As a result, I get the DB's Map that I used to develop Patch program. This patch used the same DB as the Main program so they can be synchronized.
The most difficult part was dealing with Overtime & Tax module. Since there was no source code, the only solution to this was Database Programming, an unorthodox approach because usually programmers will put the logical functions on Program. It required high data accuracy to ensure the data was processed correctly. It worked like a cheat that will manipulate data between the processes of application's execution and storing data. Aside from I had to work so hard to do this, the result was satisfying because it can meet the requirements.