Cairo, Egypt
19 days ago
Senior Java/Software Development
Position:Senior Java/Software Development

Job Description:

Job Description

ESSENTIAL DUTIES & RESPONSIBILITIES

Implement, debug, configure, build, deploy and test applications.Implement: implement new requirements, handle change requests and fix bugs for different releases. Should deliver a high quality and functioning code.Debug: ability to track and debug the code to easily figure out issues' root causes.Configure: put configuration layering, change application configuration on different environments, maintain and manage different configuration files.Build: knowledge of  how to write build scripts (e.g. using ant or maven) and how to configure nightly building tools (e.g. Jenkins)Deploy: deployment automation, how to easily deploy applications on different environments and operating systems.Test: writing unit tests, knowledge of unit tests frameworks (Junit, TestNG) and working with test driven methodologyTechnical design, decision making, analysis and research. Design: participate, propose and find the most suitable solutions using design, enterprise or architectural patterns. Software engineer should have knowledge of different development methodologies and practices (e.g. TDD, extreme programming, pair programming, n-tier architecture).Decision making: help the team lead and managers in technical decision making (e.g. most preferred UI technologies that best match a specific problem statement)Analysis and research: stay updated with new technologies and solutions for different problems, quick research is required.Ability to quickly analyze and provide solutions to business and technical problems.Task breaking down, setting task priorities, using JIRA, task estimation and follow release policies and rulesSetting priorities: discuss and understand priorities with the leader.JIRA: regular access and updates on JIRA, guiding other team members about how to use JIRA.Task breakdown: distinguish and understand the difference between epics, stories, and tasks. Breaking tasks intosmaller tasks as possible as could be.Estimation: provide rough and almost accurate estimates for the assigned tasks, stick to due dates and meeting the deadlines, estimating according to the smallest tasks in a given sprint.Other teams support and collaboration, training, Collaborate not only within the team but with other teams.Support and help could be required including shifting between teams in different releases.Training and guidance: knowledge transfer, training sessions,and guiding other colleagues.

Experience / Education

4+ years of experience in Java software development.Bachelor’s degree in Computer Science or equivalent education in the form of work experience at similar technology positionsTechnical skills required:Strong knowledge of React and NodeJSSprint framework (boot, data, and security)OOP concepts and design patternsContinuous Integration /Continuous deliveryKafkaApplication Servers (Apache Tomcat, and one of the enterprise application servers)TypescriptDatabase (Oracle, MySQL, Native SQL, DB design, and ERD)ORM (JPA, Hibernate)Web Services (REST and SOAP web services basics)Clean Code (Code quality standards)Unit Test and Frameworks (Junit)Build Tools (Maven)Source/Revision Control (GIT or SVN)Preferred to have:GWTBig Data (Spark, any NoSQL database like MongoDB)General (Security, Aspect Oriented)LinuxAWSIssue Tracking (JIRA)

Kubernetes

Location:EG-Cairo, Egypt (Al Emdad & Al Tamween)

Time Type:Full time

Job Category:Information Technology
Confirm your E-mail: Send Email
All Jobs from Arrow Electronics