Responsibilities Designing, developing, testing, troubleshooting, debugging, deploying,maintaining, documenting, and delivering large-scale, highly distributed, real-timedata platform. Using Java, object-oriented (OO) design patterns, NoSQL DBs, and datamodeling techniques. Recommending changes in development, maintenance, and system standards. Working in an agile development environment to deliver a high-quality product. Mentor junior software development engineers.Basic Qualifications Bachelors/Masters degree in computer science or a related field. 4+ years of experience in software development. Proficient in Core Java, with a good knowledge of Javas ecosystems. Proficient in multithreading in Java. Excellent problem-solving skills. Possess an extremely sound understanding of the basic areas of ComputerScience such as Algorithms, Data Structures. Strong OO programming and design skills with an understanding of commondesign patterns. Knowledge of professional software engineering practices & best practices forthe full software development life cycle, including coding standards, codereviews, source control management, continuous deployments, testing, andoperations. Candidate must have good written and oral communication skills, be a fastlearner, and have the ability to adapt quickly to a fast-paced developmentenvironment.Preferred Qualifications Experience building large-scale, fault-tolerant distributed systems. Familiarity with Big Data platforms and architecture, relational and no SQLdatabase concepts, solid knowledge of Hadoop, Spark, Hive, etc in general. Demonstrated ability to mentor junior software engineers in all aspects of theirengineering skill-sets.