technology skills for developers