Responsibilities include support, engineering and programming. Support: Assist end-users on best practices utilizing existing frameworks and newly developed software. Engineering: Design and develop JAVA applications incorporating industry standard frameworks where appropriate (such as Remote Energy Monitoring Systems and Building Automation Systems). Plan for highly available and scalable applications. Incorporate services into system design where appropriate. Web-Based Distributed Systems Architecture Engineering: Design, development and implementation of local and/or enterprise level web-based systems. Plan for responsive user interfaces incorporating JAVA, XML and HTML5 technologies and mobility needs (smartphones and tablets). Stay abreast of industry trends and continually evaluate them for potential impact and/or uses within the architecture.