Java Developer Requirements
- Strong Java programming skills
- Minimum of 8 years practical software development experience
- Robust object-oriented design pattern knowledge and implementation experience using Java
- Python a plus
- Advanced knowledge and experience developing and working with relational databases such as Sybase and MySQL
- Experience with multi-tier application architecture and high performance distributed and in-memory caching solutions
- Strong understanding of data modeling techniques
- Strong foundation in SDLC best practices including test driven development, unit testing discipline, agile development, and CI/CD strategies
- Education: B.E, B. Tech, MCA, MSc (CS) or equivalent
- Passion for engineering highly available, performant systems
- Creativity and resourcefulness to problem solve independently
- Curiosity and drive to learn new things and build new solutions
- Strong communication, time management, organization, attention to detail
- Working knowledge of building and deploying distributed systems a plus
- Experience with cloud technologies (e.g. Kubernetes, Docker, OpenStack) a plus
Java Developer Detailed Skills Matrix
- General Concepts
- Core/OOPS
- OOPs Concepts & Patterns
- Java Keywords – Static, FInal, volatile, synchronized, transient, this super etc.
- Constructors
- Abstract Classes and Interfaces
- Dependency Injection
- Exceptions – Checked, Unchecked
- Access Specifiers
- IO & Serialization
- Generic & Collections
- Generics
- Collections – List, Map, Set
- Data Structures & Collections
- Concurrency
- MultithreadIng and Synchronization
- Non-blockIng Collections/Utilities
- Memory Management
- JVM and Memory Management
- Heap dump and thread dump analysis
- GC/Memory TunIng
SprIng Framework
- SprIng Core
- SprIng Boot (good to have)
- StrIng Data
- StrIng MVC
Misc
- GIT
- Maven/Gradle
- Design Patterns
- Junit/TestIng
- CachIng In general
- Kafka (good to have)
- Cassandra (good to have)
- MessagIng - JMS/Queues (good to have)
Network and Distributed Aapplications
- Knowledge of Protocols like IP, HTTP, TCP, FTP, UDP
- Sockets, RMI, RCP
Web Applications
- Angular/TypeScript
- JSP / Servlets
- Markup Languages like XML and JSON
- Service Oriented Architecture / Web Services – SOAP / REST / gRPC
- Web Frameworks like Struts / SprIng
- Web Technologies like HTML, CSS, Javascript and JQuery
Java UI
- Applets
- Frameworks like SwIng, SWT, AWT, JavaFX (SWT only if you’re buildIng somethIng on top of Eclipse)
Database / ORM
- Cursors
- SQL Queries – Inner Outer JoIns, Group By , HavIng
- Stored Procedures
- Triggers
EY exists to build a better working world, helping to create long-term value for clients, people and society and build trust in the capital markets.