In the past I was in a situation where I had to insert some raw client data to the prod database. Now it wasn't a fresh clean database. The prod tables already had significant amount of data in it. I was given data files from clients and instructed to get these data in the appropriate tables.
The initial solution proposed by me was to write a script that will call the existing the backend process with the raw data files and let it decide what to put where. That way, even if some data doesn't go through, we'll have logs. And also it's reusable. Obviosuly this would take some time to write and test the code.
But the company needed it fixed yesterday. So I suggested let's make the minimal change to the backend process, deploy it, and feed it the raw data. The we can re-change it back after this issue is gone and build the script from the initial solution for future.
But my manager and senior dev insisted on writing an one-time db script that would take the raw data files, apply all the business logics in the database layer, and then insert them in the tables. It was also the fasterst solution (at that time). I didn't question their decision though I feared that if something went wrong and there's no log, I would have to fix the db records one by one.
I am asking the community to understand what was wroing with my initial soluton and what's the proper indistry standard? What would you do if you were in this scenario? And why?
P.S.: I'm not a native speaker. So ignore my poor choice of vocabulary.
submitted by /u/jayed_258
[link] [comments]
from Software Development – methodologies, techniques, and tools. Covering Agile, RUP, Waterfall + more! https://ift.tt/CLRM7SO