Overview
Skills
Job Details
No C2C/H1B
Java backend developer experience is a must; all others will be rejected.
Please note that this is a 6-month contract position with possibility to extend.
Remote Work Considerations:
- While we prefer candidates to work onsite, we are open to remote candidates as long as they can commit to core working hours in US Eastern Time.
Location: Lowell, MA (preferred onsite) - if candidate in Lowell, MA role will be onsite.
Candidate Considerations:
- We are looking for candidates with strong software development skills and the ability to write clean, efficient, and maintainable code.
- The ideal candidate should be able to debug and optimize legacy systems, particularly focusing on memory leaks and garbage collection issues.
- Candidates should be considerate when making coding changes or adding new features to a legacy system, as daily challenges involve maintaining system stability and efficiency, similar to those faced in banking software.
- Although we would prefer candidates familiar with DOCSIS or network hardware from an SMP perspective, this is not a requirement.
- A candidate with strong software development expertise will be sufficient.
Required Skills & Qualifications:
- Strong proficiency in Java, specifically backend development with a focus on low-level coding.
- Experience with Linux-based Java programming.
- Knowledge of high-performance backend systems and the ability to work on high-availability software.
- Familiarity with Python is a plus, though not required.
- Experience with relational databases such as SingleStore, SQL.
- Proficiency in non-relational databases, particularly Cassandra and Solr.
- Experience with messaging systems such as RabbitMQ, Kafka, and Kafka Streams.
- Knowledge of network programming protocols (e.g., SMP, TCP/IP, Sockets, etc.) is desirable.
- Strong understanding of distributed systems and large-scale software development.
- Ability to work with Spring Boot and other frameworks for distributed data processing.
- Experience with Apache Ignite is a plus.
- Exposure to cloud technologies preferred.
- Experience in network management and knowledge of networking principles is a plus, especially for roles in finance, telecom, or related fields.
Technical Tools & Version Control:
- We use GitBucket for version control. Familiarity with GitBucket is preferred, but candidates with experience using other version control systems (e.g., Git, SVN) should be able to transition easily.
- For development, we use Maven and IntelliJ IDEA (though Eclipse is also acceptable).
- Deployment is handled with Ansible.
Preferred Qualifications:
- Previous experience in network programming and low-level network protocols (SMP, TCP/IP).
- Experience in working with large-scale, distributed software systems.
- Familiarity with message brokers, event-driven architectures, and stream processing.
- Familiarity with Cable and FTTH networks, DOCSIS, or PON is a plus.
Additional Skills (Nice to Have):
- Exposure to cloud-based technologies and architectures.
- Experience in designing and optimizing high-traffic backend systems.
- Ability to troubleshoot, debug, and optimize complex backend applications.
Key Responsibilities:
Develop and maintain backend services using Java, with an emphasis on low-level coding and high-performance systems.
Work on high-availability Java-based software to ensure efficient performance and reliability.
Collaborate with cross-functional teams to design, implement, and optimize backend systems.
Implement network programming techniques (SMP, TCP/IP, Sockets) for system layers close to hardware.
Utilize Spring Boot-based modules in distributed networks for heavy data processing.
Participate in the integration and management of messaging bus technologies such as RabbitMQ, Kafka, and Kafka Streams.
Manage and interact with both relational databases (SingleStore) and non-relational databases (Cassandra, Solar) for different system components.
Handle networking tasks, including FTP, TFTP, ACP, and other protocols.
Contribute to the overall architecture and performance tuning of backend systems.
Ensure adherence to best practices in Linux-based Java development and backend architecture.
Applicants must provide their phone number. Reference job number A4721.