What are the responsibilities and job description for the Senior Java and C Developer position at VITS Consulting?
Job Description
Job Description
Job Title : Senior Java and C Developer
Job Type : 6-Month Contract
Current office location : Bloomington, MN, moving to a new location by April.
Role Overview : We are seeking a highly skilled Senior Java and C Developer to join our team. This role will primarily focus on stabilizing our legacy platform during the first six months,
identifying system issues, working closely with hardware devices, and laying the groundwork for future modernization. The ideal candidate will have a background in both Java and C, with experience in troubleshooting hardware-software interactions.
Key Responsibilities :
Platform Stabilization :
Take ownership of troubleshooting and stabilizing core modules of the system.
Collaborate with cross-functional teams to diagnose, prioritize, and resolve hardware-software issues.
Focus on modules interacting with smart card readers, printers, and hardware security modules (HSMs).
System Analysis :
Perform deep-dive investigations into Java and C modules to identify and resolve critical issues.
Analyze legacy Java applications using RMI, Spring (XML configurations), and Windows-based services.
Hardware Interaction :
Work with cryptographic hardware devices, including HSMs.
Implement and troubleshoot communication protocols like APDU commands to smart card readers.
Knowledge Transfer :
Collaborate with existing team members to ensure effective knowledge transfer.
Document key processes, issues, and resolutions for long-term use.
Future Modernization :
Support long-term platform modernization planning, including possible migration to microservices and Spring Boot.
Required Skills and Experience :
Java Expertise :
5 years of experience in Java development.
Strong knowledge of legacy Java (JDK 8 or earlier), RMI, Spring with XML-based configurations, and Windows services.
C Programming Experience :
Experience with C, particularly in modules interacting with hardware devices.
Ability to troubleshoot hardware-software interactions and low-level device communication.
Hardware / IoT Interaction :
Experience working with hardware security modules (HSMs), cryptography, and device communication protocols (e.g., APDU commands).
Familiarity with printers, smart card readers, or IoT devices in legacy environments is highly desirable.
Problem Solving and Ownership :
Strong troubleshooting skills and a proactive approach to issue resolution.
Ability to take ownership of tasks and independently drive them to completion.
Team Collaboration :
Strong communication and collaboration skills.
Experience working in cross-functional teams to ensure effective stabilization efforts.
Preferred Skills :
Familiarity with hardware-software protocols such as ActiveMQ or other messaging systems.
Experience in cryptographic operations related to financial transactions.
Knowledge of future state technologies like microservices, Spring Boot, and cloud integration.