I'm Interested

Job Details

Senior Software Developer

Job Description:

  • 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 methodology
  • Technical 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 tasks priorities, using JIRA, task estimation and follow releases policies and rules.
  • Setting priorities: discuss and understand priorities with leader.
  • JIRA: regular access and updates on JIRA, guiding other team members about how to use JIRA.
  • Task break down: distinguish and understand the difference between epics, stories, tasks. Breaking tasks to smaller tasks as possible as could be.
  • Estimation: provide roughly 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
  • 3+ 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 positions
  • Technical skills required:
  • Strong knowledge in AngularJS V2 or plus and NodeJS
  • OOP concepts and design patterns
  • Continuous Integration
  • JSE/J2SE
  • Application Servers (Apache Tomcat, and one of the enterprise application servers e.g., WebLogic, JBoss, WebSphere, Glassfish, OC4J)
  • JavaScript (Basics, AJAX)
  • Database (Native SQL, DB design and ERD, Oracle, MySQL)
  • ORM (JPA, Hibernate)
  • Web Services (REST and SOAP webservices basics)
  • Clean Code (Code quality standards)
  • Unit Test and frameworks (Junit)
  • Build Tools (Maven)
  • Source/Revision Control (GIT or SVN)
  • Preferred to have:
  • GWT
  • Big Data (Hadoop, Hive, Sqoop, any NoSQL database like HBase or MongoDB)
  • Search Frameworks (Apache Solar, Elasticsearch)
  • General (Security, Aspect Oriented)
  • Issue tracking (JIRA)

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

Time Type:
Full time

Job Category:
Information Technology
We're connecting diverse talent to big career moves. Meeting people who boost your career is hard - yet networking is key to growth and economic empowerment. We’re here to support you - within your current workplace or somewhere new. Upskill, join daily virtual events, apply to roles (it’s free!).
Are you hiring? Join our platform for diversifiying your team
Senior Software Developer
I'm Interested