Overall purpose of roleDeveloper, designer and team lead for Composer GUI.Delivering the visualisation components for a robust, high scalability data transformation platform.Periodically work in the architecture team to evaluate, compare and test technologies.Key AccountabilitiesAccountable for delivering key components for a robust, high scalability data transformation platform.Responsible for designing and delivering components.Key focus for this platform is to drive cost savings through simplifying data manipulation. It attempts to drastically reduce the number of people required to productionise transformations.This is a core platform capability. Thus interactions with architects, technical users and business analysts will be required.This role comprises two distinct functions. The first is the hands-on design, development and deployment of an innovative new product.This role is not about applying well known patterns to established problems. Our application applies advanced computer science theory to our business domain. We are focused on integrating concepts to build elegant and simple solutions. As such we require an open mind, entrepreneurial spirit, and a keen analytical insight. We require reasoning from fundamentals and concepts not patterns and technologies.The solution combines concepts from program interpretation, functional programming, orchestration, function and data visualisation, data manipulation, distributed computing, immutable data structures and graph theory. We focus on a declarative style to abstract business logic from IT implementation details/technology rather than rely purely on interfaces and messaging.We are constantly evaluating our processes and design to provide a holistic, integrated, end-to-end solution. This saves costs by eliminating unnecessary interactions and coordination. We always attempt to improve visibility of business logic putting as much power in the hands of those that understand the data and business as we can. The ideal candidate will embrace this philosophy and actively advance these ideas.Essential Skills/Basic Qualifications:At least 7 years of IT programming experienceStrong proficiency in JavaScript, including DOM manipulation and the JavaScript object modelExperience with React and writing vanilla JavaScript, preferably ES6Fluency with HTML5 and CSS3Experience with common Front End development tools such as Babel, Webpack, NPM, etc.Familiarity with visualization libraries (eg D3, Joint.js)Experience with GITBasic design and UX sensibilitiesExperience in Test/Behaviour Driven Development (including test automation and mocking tools)Understanding of Agile methodologies and SDLC phasesDesirable skills/Preferred Qualifications:A graduate degree with strong grades from a reputable universityContinued education. MOOC (Cousera, Udacity etc.)Previous Python experience would be helpful though not requiredExposure to Clojure, Haskell, F# will be beneficial.Strong fundamentals in computer science. Interested in applying theory to real practical problems