TEI Web Solutions is seeking to hire a skilled Software Developer to help with the development of our current projects. Your duties will primarily revolve around building software by writing code, as well as modifying software to fix errors, adapt it to new hardware, improve its performance, or upgrade interfaces. To be successful in this role, you will need extensive knowledge of programming languages, MVVM architecture, and the software development life-cycle, as well as the ability to do team working.
Vacancies: 1 vacancy
Terms of Employment Permanent: Full time40 hours/week
Start date: As soon as possible
Software Developer Qualification and Requirements:
- Bachelor's degree in computer engineering, software engineering, or related majors.
- Deep understanding of Hybrid Agile development methodology.
- Dominant over MVVM architectural pattern.
- Good knowledge of the A/B testing method.
- Experience in working with Git version control.
- The desire to work in a fast-paced environment.
- Ability to develop unit testing of code components or complete applications.
- Must be a full-stack developer and understand concepts of software engineering.
- At least 2 years of work experience in large-scale software development projects.
- Good English language skills. The ability to communicate in Farsi or Arabic is a plus.
- Able to understand the main ideas of a text on both concrete and abstract topics, including technical discussions in Software Development.
- High ability to work under pressure in a fast-paced environment with tight deadlines
Duties and Responsibilities:
- Writing, modifying, integrating, testing and fixing errors in software codes.
- Creating wireframes of the new functionalities of the software.
- Maintain existing computer programs by making modifications as required.
- Identifying and communicating technical problems, processes and solutions.
- Preparing reports, manuals and other documentation on the status, operation and maintenance of software.
- Assisting in the collection and documentation of user's requirements.
- Assisting in the development of logical and physical specifications.
- Developing pieces of code based on MVVM software architectural pattern
- Creating test cases using proper test libraries, and user stories, and test cases.
- Designing and creating database auto-backup & synchronization procedures.
- Running monthly researches to find newer technologies of our projects scopes.
- Following strictly the code styling and documentation manual provided.
- Collaborating with cross-functional teams to define and develop new features.
- Following version control principles with Git when committing code and collaborating with other team members.