Principal Java Software Engineer - Network at AVM Consulting Inc
Richmond, VA 23173
About the Job
This role is NOT for the average "Java API developer". It requires a core understanding of network protocols and a strong foundational understanding of technology in general.
This role is for a Fortune 25 company, our direct client, one of the world leaders in Media streaming.
The client team is responsible for providing both frameworks and reference examples for Java applications and services that various engineering teams build on top of. The team must provide engineering counterparts with reliable, well-tested, documented frameworks. Like widely used open-source frameworks, these APIs and frameworks need to consider backward compatibility, upgrades, transitive dependencies, and dependency management. As the team evolves and modernizes, it needs to rev and introduce new frameworks as appropriate. The candidate will be working with a team of other hardworking Java engineers and architects focusing on implementing a feature backlog and roadmap. The frameworks need to incorporate standard methodologies and incorporate foundational support for core services like logging, statistics collection, distributed tracing, and other critical features of services frameworks.
Key Qualifications
Strong proficiency and experience in Java, open-source HTTP frameworks, and API design
Experience with Reactive Java and asynchronous Java development
Good OpenTelemetry understanding
Detailed knowledge and experience working with network stacks and internet protocols (Netty or ServiceTalk is a big plus)
Experience with performance-critical applications and optimization
Linux networking and socket experience a plus
Experience driving product features, functional specifications, and development schedules, representing 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 skill
work on the company's internal applications (microservices). Mostly internally built frameworks and solutions are used, with no common frameworks like Spring or Hibernate.
implement new features and support existing ones
improve existing code quality and test coverage
independently investigate and fix errors that happen on QA or production
Technical Skills
Java core, multithreading.
Microservices and network communication, HTTP.
Automation testing (integration, unit, functional, etc). JUnit, Mockito.
Build tools: Maven, Gradle.
HTTP client frameworks, Netty is a plus.
Solid understanding of networking is a must.
Other Details
Location: Remote role, Eastern Europe or South America preferable. The time zone will be manageable.
Length: 2+ years, long term
Client: Fortune 25 company in the Media space.
Rate: DOE
The difference between something good and something great is attention to detail - AVM Consulting.