Principal Software Engineer (Java)




Key Responsibilities: 

 

  • Design, develop, and maintain high-performance Java-based applications. 
  • Manage MySQL database for efficiency and scalability. 
  • Analyze complex business requirements and translate them into technical solutions. 
  • Provide troubleshooting and debugging expertise to resolve application issues efficiently. 
  • Understand existing applications and have a great analytical mind to troubleshoot and resolve issues with the sense that it doesn't affect other modules. 
  • Design various critical test scenarios to ensure that the designed solution works fine without hampering other functionalities 
  • Collaborate with cross-functional teams to ensure smooth project execution. 
  • Perform code reviews, mentoring, and knowledge sharing with the development team. 
  • Ensure adherence to best practices, design patterns, and coding standards. 


Must-Have Skills: 


  • 8+ years of hands-on experience in Java development. 
  • Strong expertise in Core Java, Spring Boot, Hibernate. 
  • Proficiency in MySQL database design, indexing, query optimization, and stored procedures. 
  • Strong analytical mindset with excellent problem-solving and troubleshooting skills. 
  • Experience in performance tuning, profiling, and debugging complex applications. 
  • Proficiency in multithreading, concurrency, and asynchronous processing. 
  • Knowledge of RESTful APIs, SOAP, and third-party API integrations. 
  • Hands-on experience with CI/CD pipelines, version control (Git), and Agile methodologies. 

 

Good to Have: 


  • Device communication protocols such as MQTT, WebSocket, TCP/IP, or Serial Communication. 
  • Exposure to big data technologies like Apache Kafka, Spark, or Hadoop. 
  • Experience in real-time data processing and IoT-based communication. 
  • Knowledge of security best practices in Java applications. 

 

Soft Skills: 


  • Strong leadership and mentoring abilities. 
  • Effective communication and collaboration skills. 
  • Ability to work independently and manage multiple tasks efficiently. 

 

Qualifications:

 

  • Bachelor’s or master’s degree in computer science, Information Technology, or a related field. 
  • Relevant certifications in Java, Cloud Computing, or Database Management are a plus.