Job Description :
- 6+ years of work experience with at least 3 years in full-stack Web Development
- Must have 3+ years of experience with HTML, CSS, JavaScript, React, PHP(Laravel framework), mySQL, Node.js, Caching, Performance and Load balancing
- Good to have experience with AWS services like Lambda, DynamoDB, AppSync and API Gateway
- Must be able to write unit tests where applicable.
- Must be familiar with Web Application Architecture, design patterns like MVC and capable of making design decisions taking into account performance and scalability of the application.
- Strong verbal and written communication skills in English, including ability to understand advanced technical documentation
- Strong knowledge of database design and efficient SQL statements
- Proficiency with agile software development tools like JIRA, Pivotal tracker etc
- Ability to quickly learn new technologies, APIs and tools
- Ability to analyse customer requirements and define these as a formal specification for software development
- Result oriented with strong self-management skills
- Good analytical skills and self-initiative to learn new technologies
- Flexibility and willingness to work in different stacks of technology is desirable. Being technology agnostic is an added plus
Responsibilities and key activities :
- Break down high-level objectives into specific software development tasks and follow through on their execution
- Design overall system architecture, database schema and user interface
- Ownership of key technology and solution delivery for modules/components of the product
- Help with gathering requirements, writing functional specification, and creating and reviewing user stories and technical specifications
- Create feasibility analysis and provide accurate effort estimates and status updates, and produce high quality deliverables in a timely manner
- Ownership to develop plan and deliver components/modules to meet schedule and quality expectation of product owner
- Write code that is easy to understand and fits with existing patterns
- Conduct peer code reviews and perform unit and integration testing
- Implement unit testing, integration testing, deployment approach, and maintain programming documentation which include commenting code and user guides
- Analyze, debug and solve complex technical issues and customer escalations
- Communicate and interact effectively with customers, product management, QA, documentation, training, deployment, support and other departments within Company
- Mentor junior software engineers on their technical development
- Stay current on software technology, concepts and tools, as well as related and competing products
- Help with creating, implementing, executing and guarding optimized processes, policies and procedures
- Institutionalize industry standard software engineering processes, practices and methodologies
- Aid in recruitment, assimilating necessary technical knowledge and building team to meet organizational goals