1) Software Design and Development: Micro designing and developing of given tasks. Participating macro designs with senior team members.
2) Software Testing: Testing own or others code with all aspects. Attending acceptance tests when necessary.
3) Database Activities: Preparing and fine-tuning databases, implementing simple to complex sql queries for various purposes.
4) Product Maintenance: Maintaining products in multiple platforms from development to production phases.
5) Technology and Innovation Activities: Researching new applicable technologies, self-starting or participating innovational activities.
6) Periodic Reporting: Communicate periodic status reports to senior members and escalate any potential issues.
7) Remote Work: Working remotely after work hours or at the weekends in urgent cases.
8) Assist in determining the technical direction of the project and the overall structure of the solution.
9) Analyze business and technical (architecture) requirements.
10) Assure the consistency across all project work products.
11) Deliver the preliminary architecture and high-level application design.
12) Contribute to detailed application design.
13) Conduct detailed design, code and test reviews.
14) Apply experience in web application architecture and enterprise-level software development to create unique solutions.
15) Contribute to the overall architecture of the application.
16) Collaborate effectively with other teams (internal and external) in a very dynamic environment.
17) Deliver software projects on schedule and with high quality.
18) Work closely with QA and Business teams to ensure total product quality and integration
19) Work closely with Data Centre and Operational teams to ensure the product can be deployed and supported in a production environment