Work Reflection 2020-03 to 2021-05
DS
- It is ok if an algorithm does poorly in some cases while doing well in some other cases.
 - Null data handling. The importance is to find out what those cases are. 
- Join-safety
What happen if after a join, a dataframe has 0 rows, Or it has < rows than expected -  
Filter-safety
What happen if after a filter, a dataframe has 0 rows, - Data verification 
Measure upstream data quality
Verify counts end-to-end (per customer, per user, per incident…) - Need to create metrics/dashboards/reports for the data going through
So we can understand the product/user behavior better - Always have a peer to review your analysis before presenting to the team
 - business rules can be if else, or decision tree
 - (need to improve) get familiar with Runtime, Storage, compute, memory complexity
 
 - Join-safety
 
Software engineering
- save work incrementally (both coding and research) 
- Lots more information.
Things to log:- start/end of each step
 - Data size start/end of each step
 - A verbose flag to print out partial outputs 
(it helps debugging a lot) 
 -  
Think and test how your algorithm scales with data. Have a plan for what to do when input data increases.
 - have same (table) names across different applications
 - really need good documentations how an app processes the data so someone else don’t have to go through the code to figure it out
(think I am doing ok on this part) -  
don’t be afraid to ask questions
(sometimes I spent hours on something that I think colleague would have figured that out under 15mins) - save some scripts if you think you/your team may need to use those in the future
 
 - Lots more information.
 
Project Management:
- have an understanding of current project’s business value, timeline, stability
 - ask what is the significance if each story, task
 - periodically think about how to improve the system
 - every sprint/month/quarter, take responsibility thinking what you need to do for the next Sprint/month/quarter
 - have a central place to keep track of issues
 - demo style 
- Problem statement - Work done - Results - Things to do - (need to improve).[Agile] sometimes need to adjust the scope of the story
 - (need to improve).reach out to external team as early as possible
 
Others
- (need to improve).how to resolve team’s different opinions