Should be comfortable working with a team to craft a design. Choosing appropriate technologies that both solve the problem at hand and stays within constraints.
Works with a team of software engineers that build enterprise software products and solutions.
Seeks to understand the business needs and operational constraints in addition to the technical challenges necessary for solving problems.
Provides team and project leadership to Engineers and software development activities.
Writes code following best practices and standards (Effective Java, Pragmatic Programmer, etc.)
Reviews the code of others, giving feedback on best practices for software development and code creation.
Participates in team meetings in an open, cross-functional environment.
Analyzes and modifies development work to verify the resulting software meets established goals and functionality.
Conducts system analysis and recommend changes to improve performance, scalability and stability.
Researches new development tools, libraries, methodologies and technologies.
Documents his/her work by writing documentation, flowcharts, diagrams, code comments, etc.
Collects, analyzes and summarizes development and service issues to provide information and remediation steps.
Envisions, designs and socializes API contracts prior to development.