| The position candidate should have strong understanding of software development using Agile methodologies and have experience working with global and distributed teams and cloud native development. This position requires a thorough knowledge of developing scalable, resilient and high performance applications from the ground up, also able to take existing applications and make them cloud deployable. • Requires a strong understanding of event streaming, data lineage and usage, data storage, modeling, ETL, and batch file processing. • Extensive data experience, including ETL, event streaming batch file processing & transfer, data ingestion, modelling, Big Data such as Hadoop/Spark, database experience (Oracle) and reporting & analytics • Expert in full stack Java development, design patterns, threading, unit testing, debugging • Experience architecting highly available systems that utilize load balancing, horizontal scalability and high availability • Experience with large scale software development or application engineering with recent coding experience in two or more of the following languages: Java, JavaScript, C/C++, C#, Objective-C, Node.js, .NET, Python, PHP or Ruby • Experience working with JavaScript libraries, such as BootstrapJS, and/or React.js • Experience with logging frameworks • Experience with implementing web services