Provide technical expertise in requirements analysis design effort estimation development testing and delivery of highly scalable and secure distributed backend services
Work with product management architects and other engineering teams to understand stated and unstated needs and turn them into functional and technical requirements
Maintain a strong sense of business value and return on investment in planning design and communication
Support technical design and architecture discussions and help drive technical decisions while making appropriate tradeoffs on technology functionality robustness performance and extensibility
Estimate the work scope and timelines and consistently deliver on those commitments
Implement refine and enforce software development techniques to ensure that the delivered features meet software integration performance security and maintainability expectations
Research test benchmark and evaluate new tools and technologies and recommend ways to implement them in product development
Maintain high standards of software quality and technical excellence within the team by establishing good practices and writing clean testable maintainable and secure code
Contribute to a forwardthinking team of developers acting as an agent of change and evangelist for a qualityfirst culture within the organization
Mentor and coach team members to guide them to solutions on complex design issues and do peer code reviews
Proactively identify issues bottlenecks gaps or other areas of concerns or opportunities and work to either directly affect change or advocate for that change
Perform critical maintenance deployment and release support activities including occasional offhours support