In this role, you will design, develop, modify, adapt and implement short- and long-term solutions to information technology needs through new and existing applications, systems, databases and applications infrastructure. You will review and interpret system requirements and business processes. You will code, tests, debug and implement software solutions.
– Utilize Java and related technologies to design, develop, test and deploy various large-scaled, distributed server side application.
– Be involved in all phases of 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.
– Bachelor’s degree in Computer Science or related fields.
– 0-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 database or NoSQL databases.
– Familiar with Java 8 new features like Lambda and Stream.
– Knowledge about network protocols and network security.
– Basic knowledge about design patterns.
– Experience in Agile methodologies.
– Experience in Web Application development.
– 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.