write code in one or more programming or scripting languages, such as PHP or JavaScript
plan and prototype new applications
design the architecture of the components of an application
decide on the best technologies and languages for the project
test sites and applications in different browsers and environments
problem-solve
fix bugs in existing projects