Position: Senior Java Developer
Company: ITernal Group
Experience required: 3y
English level: upper

ITernal Group is seeking a highly talented, motivated, and proactive Senior Java Engineer to join the Engineering team.

This position is responsible for all phases of the program life cycle. 
As a Senior Java Engineer on our Engineering team you will design, develop, test, and implement solutions for various software systems and applications. 
The ideal candidate for this position has extensive experience working on Java based applications in a hybrid cloud/on-prem environment and has experience implementing both batch and real-time data solutions. 

• Make well-informed decisions with deep knowledge of both the internal and external impacts on teams and projects. Foresee shortcomings ahead of time and be able to drive to resolution. 
• Code and maintain advanced Java applications (with a focus on maintaining data quality and performance at scale) 
• Work on Multiple Programming Languages not limited to: 
• Java (multiple years of experience) 
• Scala 
• SQL 
• Design REST based applications and create associated Swagger documentation 
• Work on Java Spring framework, containerization and microservices. 
• Use bash for scripting and automation. 
• Use various data formats such as JSON, Parquet and Avro. 
• Work on highly scalable applications on on-prem/cloud platforms (AWS/Azure/GCP) 
• Identifies potential process improvement areas and suggests options and recommends approaches 

Qualifications 
• Bachelor’s degree in Computer Science or related field or equivalent experience. 
• 4+ years of experience in a computing environment with multiple programming languages 
• Must have 4+ years of Experience working with Java Frameworks (Spring, Springboot, Strut) 

• Must have 
Experience working with RESTful web services (JSON, JWT) 
• Experience with Hadoop, HBase and other NoSQL and Big Data Technologies. 
• 2+ years of experience implementing cloud and big data solutions is highly desirable. 
• Experience with unit testing like JUnit5 would be good 
• Multiple years of experience working in a Unix/Linux environment 
• Prior experience with NoSQL database technologies (HBase preferred) 
• Experience in cloud and/or Hadoop administration a plus 
• Familiarity with concurrency model and multi-threading is desirable. 
• Understands the concepts behind distributed databases, and both streaming and batch processing systems