developer productivity bottlenecks