Responsibilities. Define robust architectures for new applications, leveraging and enhancing existing building blocks or creating new reusable components. Enhances existing application as per customer requirements. Provides decision on adjusting product architecture as customer requirements, market conditions and technology evolves. Identifies and articulates new technology, programming, design methodology, and best practices. Developments and Ma...