While working within a team in an Agile environment, you will be :
- Designing high quality applications that are highly scalable and extensible
- Estimating, tasking and prototyping
- Contributing clear and maintainable code to a shared codebase
- Collaborating with cross-functional team members on features, design and implementation
- Investigating, learning and applying new technologies and processes
- Clarifying requirements with team and client representatives
Must Have’ Skills / Experience :
Proven experience designing and developing complex applications that are highly scalable and extensibleFluent in JavaSignificant cloud platform experience, preferably with AWS or AzureStrong fundamental knowledge of computer science algorithms, data structures and design patternsExperience designing distributed systems at scale handling large data sets leveraging Apache Spark, Kafka, Kinesis, and Hadoop toolsetsExperience with Infrastructure as Code such as TerraformAttention to well-crafted softwareNice to Have’ Skills / Experience :
Exposure to and interest in Agile approaches to software development e.g. automated testing, continuous integration, project rooms, pair programming, etc.Fluent and current in HTML5, CSS and JavaScript frameworksRelational and / or NoSQL databases, SQL queries and object relational mapping toolsDistributed computing and platform as a serviceUNIX, Linux and W3C technologies including HTTP and XMLAutomated build, test and deployment tools