Description

Job Duties and Responsibilities

In this role, you will design, develop, modify, adapt and implement short- and long-term solutions to

information technology need through new and existing applications, systems, databases, and applications

infrastructure. You will review and interpret system requirements and business processes. You will code,

test, debug and implement software solutions.


 

Responsibilities:

- Utilize Java and related technologies to design, develop, test, and deploy various large-scaled,

distributed server-side applications.

- Be involved in all phases of the software development life cycle.

- Gather and analyze requirements from Product Managers/Owners.

- Build tools to improve application reliability and quality, and programmer productivity.

- Align teams designs with larger architecture objectives.

- Assist team members in design discussions and decisions.

- Perform code and design reviews with other team members.

- Create and execute test cases based on test strategies and test plans

- Work closely with Operations & Infrastructure groups to understand challenges in production

environments.

Qualifications:

- Graduate degree or undergraduate degree in Computer Science, Computer Engineering, Information

Technology, Information Systems, and Software Development

- 3+ years of experience in Core Java programming.

- Proficient in data structure, algorithm, object-oriented design, and multithreading.

- Experience in basic database design including SQL databases or NoSQL databases.

- Familiar with Java 8 new features like Lambda and Stream.

- Basic knowledge about design patterns.

Preferred Qualifications:

- Experience in Agile methodologies.

- Knowledge in distributed system design.

- Experience in Cloud Platforms like AWS, Azure, or similar.

- Experience in DevOps and related tools like Jenkins, Maven, GitLab, and shell script.

This position may require relocation

Education

Bachelor's degree