Coding complex modules● Code review and enforcing best practices● Improve Application architecture● Constantly improve his/her own skill set● Customizations to existing open source or custom built applications● Building a knowledge base of the latest programming trends, best practices, and methodologies