Key Duties and Responsibilities  Participates in planning, architecture, and research Performs complex development activities that may require extensive analysis in areas including user experience, and software design Employs best practices and helps to maintain them through technical reviews and mentoring Performs complex bug verification, release testing and beta support for assigned products