Implement, debug, configure, build, deploy and test applications.
Implement : implement new requirements, handle change requests and fix bugs for different releases. Software engineer 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 environment, maintain and manager 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 : test the work before publishing, test functional and non-functional system requirements.
Technical design, analysis and research.
Design : participate to find solutions.
Analysis and research : stay up to date with new technologies and solutions for different problems, quick research is required.
Ability to quickly analyze and provide solutions to business and technical problems.
Understanding tasks priorities, using JIRA, participate in task estimation and follow releases policies and rules
Setting priorities : discuss and understand priorities with leader.
JIRA : regular access and updates on JIRA.
Estimation : provide roughly and almost accurate estimates for the assigned tasks to assigned leader, stick to due dates and meet the deadlines.
Follow the release policies and process.
Other teams support, collaboration and training,
Software engineer should be collaborative 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 REQUIREMENTS :
1-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 :
OOP concepts and design patterns