Looking for technically strong candidate, with hands on development experience in JAVA, who is self-motivated, team player, with curiosity to learn and grow, exhibiting strong resolve and challenge the status quo, to strive for excellence in everything they do, with good professional and academic track record to be part of a team that deals with most innovative payments processing team that deals transactions at scale.
Your day to day:
- Develops efficient, elegant, clean, reusable code with no unnecessary complication or abstraction.
- Mentor other engineers and developers by providing technical and business-related guidance and resources;
- Deliver quality solutions on schedule.
- Create / Review well-articulated, detailed design documents.
- Presents issues and solutions to audiences of varying sizes. Provides recognized technical and business leadership and can provide deep technical support across a range of functionality.
- Manages workload and other assignments efficiently while being able to resolve time-critical situations reliably and professionally.
- Participates in the development of tools, systems and processes aimed at improving product supportability or overall support productivity.
What you need to bring:
- 6+ years of experience developing large scale enterprise applications, primarily with JAVA with hands on experience in RDBMS and NoSQL databases.
- 6+ years of experience developing large scale applications JAVA, Spring Core and Spring Batch, with good hands on exposure to SQL and NoSQL technologies, good understanding of relational and free form databases, including strong data architecture and SQL/PL-SQL development skills
- Exposure to Spark, Distributed Databases, Cloud Technologies is a plus.
- Deep understanding of and extensive experience applying advanced object-oriented design and development principles.
- Intermediate level understanding of designing and developing data intensive applications, and architecting them for scalability and availability.
- Developing high traffic backend services, with low latency and designing them for scale.
- Experience applying software design patterns, data structures, algorithms.
- Good analytical and problem solving skills
- Experience collaborating with business users to define the key business requirements and translate them into process/technical solutions
- Experience in Unix based development environment is a plus
- Knowledge on scripting languages like Unix Shell, Perl, Python is a plus
- Experience in application performance fine tuning is a plus.
- Experience with unit testing using Junit and writing functional testing.
- Experience using industry standard software development tools (IDE / Version Control / Continuous Integration)
- Strong debugging and problem resolution skills
- Expertise in online payments and related domains is a plus
- Focuses on test driven development and automation.
- Believes in Agile development and are comfortable with SCRUM process.
- Refactor existing codebase and in understanding existing implementations to decide to refactor or rewrite.
- Identify Performance bottlenecks and use good coding patterns to avoid them.
- You re a strong advocate of good coding standards and preach code-coverage tools like Sonar.