As a Software Engineer, you will:
- Write clean code which is commented, optimized and reusable
- Gather and evaluate user requirements and create detailed user stories in collaboration with our teams
- Design and optimize databases
- Collaborate and work with our teams in an agile environment
- Contribute towards initiatives that constantly improve the quality and security of work
- Create and execute detailed pre-development unit tests on an ongoing basis
- Automate testing via frameworks such as JEST and JUnit
- Work on multiple technologies, languages and frameworks
To be successful in this role, you will need:
- Deep understanding of one or more of: NodeJS, ReactJS, AngularJS, MongoDB, React Native, Flutter, JAVA, PHP, Laravel, WordPress and similar technologies with a focus on quality, scalability, security and performance
- Willingness to work on different technologies. If someone does not have the knowledge of multiple technologies, we are happy to train them as long as they're eager to learn
- Familiarity with TDD and CI
- Great attention to detail with strong analytical and problem solving skills
- Excellent written and verbal communication skills
- Knowledge of software engineering best practices
- Familiarity with bug tracking, code commit and project management related tools