Rigorous
time allocation aside, Mr. Phan also provided me with the challenges he faces
on the job. Interestingly, the first thing he mentions is the unrealistic
requests and expectations of customers. He exclaimed: “I feel as though some
customers perceive us as gods, able to carry out any given task, regardless of
the practicality of the request!”. In many circumstances, upper management
would agree to very ambitious ideas, forcing him and his team to find original
technical solutions to implement these ideas. However, management also tends to
impose impossible deadlines, forcing Mr. Phan’s crew to work overtime and enter
“Crunch time”. “I love thinking of new solutions to problems, but when we are
forced into periods of crunching, it’s a nightmare”, he said dauntingly, “your
mind is always thinking about coding and the problem, when you’re eating, resting
or even sleeping until you complete the project or burn out”. While this seems
like a perpetually stressful job, he also told me about very interesting traits
of this line of work: “When it comes to software development, there will be
periods that you would have to crunch 24/7, but when there are no active
projects, you are basically receiving your paycheck for free, doing practically
nothing, so things do tend to balance out in the end.”
Crunching culture could have adverse effects on developers. [1]