Software engineering faces growing pains