Duties: Gather user requirements to determine feasibility of design within time; implement the design and architecture of the software application using advanced Javascript framework; experience in Isomorphic SmartClient framework; design and develop the server layer of the application including CRUD (Create, Read, Update, Delete) operations using Postgres or SQL Server database; design and develop custom ETL process using Java and Javascript frameworks; design and develop the middle layer of the application for communication to the Postgres database using Java libraries and Remote Procedure Call; design and develop the client layer of the application including login, detailed usage and security aspects of the product using Java, JavaScript, HTML, CSS; architect and produce efficient, clean, and reusable code with automated tests; integrate software components and third-party tools; redesign existing code to correct errors, optimize system’s performance, and improve scalability; create or update technical documentation for operational process, procedures, and environment configurations including the software architecture and design decisions, so the team learns and refines existing processes; define and implement databases and workflows; define and implement a strategy for testing new features; direct and execute software system testing and validation procedures; communicate information about the Software system design and maintenance to the project management team; coordinate and verify software system installation, including operations to ensure proper functioning; conduct code and architectural reviews; collaborate with team of engineers and project managers to determine scopes of work, provide estimates and meet deadlines; provide guidance to other engineers to drive quality and deliverables. No formal hire / fire authority.