Position: Senior/Lead Java Developer
Company: Grid Dynamics
Experience required: 3y
English level: upper

There is an open-source networking library, ServiceTalk, on top of Netty (Java library). There are adapters that bridge from Apache APIs into ServiceTalk. They are looking to scale development of these ServiceTalk adapters.

The project is in active development phase. 

A SUCCESSFUL CANDIDATE MUST HAVE:
- Deep Java skills
- Good understanding of how computing networks operate and different layers of network. Need to demonstrate knowledge of how TCP operates, how TLS and HTTPS operates, as well as more modern protocols, like HTTP/2. Deep knowledge of these protocols is required for this role (not just being able to write APIs).

Min requirements to the candidate
Key Qualifications
 • Strong proficiency and experience in Java, open source HTTP frameworks and API design
 • Experience with Reactive Java and asynchronous Java development
 • Detailed knowledge and experience working with network stacks and internet protocols
 • Experience with performance critical applications and optimization
 • Experience driving product features, functional specifications, and development schedules, represent team and technology
 • Be an advocate and driver for proven engineering practices
 • Dedicated attention to detail
 • Strong interpersonal, communication and network building skills
 • Proven documentation and technical writing skills

Nice to have requirements to the candidate
• Linux networking and socket experience a plus

Time overlap until 11 am PT would be ideal but not critical. Some time overlap would be required to communicate with the team - could be limited to a few days a week. 

Do you have client interview?
Yes - 3 rounds:
- 30 min screening with lead
- 1 hr coding screen
- 30 min screening with team architect

What tasks the candidate will work with?
- Supporting of the existing system and refactoring
- Development of new services and APIs
- Work with other senior developers in a team
- Challenging and complicated tasks to work with non trivial architecture
- Work with services that are used by Apple and has many real users