As our Software Development Engineer - III Java, you will be part of our growing engineering team and take ownership of the core modules. You must have good communication, interpersonal, technical, and analytical skills in order to take part in the collaborative and cooperative development process that delivers high-quality software. You must be an expert in Java and should be familiar with popular IDEs, tools, and scripting languages on Linux. Familiarity with NoSQL, preferably Mongo, is essential to succeed in the role.
Responsibilities:
- Analyze requirements create performant, scalable, fault-tolerant software.
- As an individual contributor, write and test code to ensure compatibility and stability: refine and rewrite the code as necessary.
- Take responsibility for large technical deliverables and execute in an exemplary way.
- Work closely with engineering managers, UX designers other developers.
- Expand existing software to meet the changing needs of business.
Requirements:
- BE/B. Tech. Computer Science or MCA from a reputed university.
- 5+ years of experience in software development, with an emphasis on JAVA/J2EE server-side programming.
- Hands-on experience in Core Java, Multithreading, JDBC, NIO, web services and design patterns.
- Should have knowledge of distributed systems, distributed caching, messaging frameworks, ESB, stream/event processing (Spark streaming/Apache Flink/Beam).
- Must have knowledge of Linux, PostgreSQL, MySQL, MongoDB, and Cassandra.
- Knowledge of HBase, Hadoop, and Hive are desirable.
- 5 years of experience in building data-intensive applications scaling for millions of transactions per day and services will sub-millisecond latencies.
- Must have experience working with message queue systems/AMQP/Kafka.
- Should have experience as a participant in Agile methodologies.
- Should have excellent written and verbal communication skills and presentation skills.