The Mid Developer will work closely with the Senior Developer to manage both front-end and back-end development processes, implementing solutions from conception to final product according to business needs. The Mid Developer is required to implement and oversee the design, develop and maintenance of fully-fledged and functioning platforms.
Key Responsibilities
- Work within a Software Development team, following Agile development methodologies.
- Work with Project management and solution architects to estimate and scope out projects.
- Work with Creative team during planning, discovery, and production phase.
- Work with both front-end and back-end development teams to create and optimize solutions.
- Optimizing code for performance.
- Comment code and produce documentation to industry standards as needed.
- Produce code to the highest standards while adhering to industry accepted architecture and design pattern techniques and methodologies (e.g., MVC, SOA, OOP, DI etc.)
- Defining and developing APIs.
- Contribute to the analysis and design of software products and tools.
- Evaluate and advise on the technical feasibility.
- Create quality prototypes for a clearer understanding of UI designs.
- Test and confirm software is fit for purpose with intended audiences.
- Recommend and implement refinements and improvements.
- Follow formal Software Engineering best-practices.
- Mentoring and guiding team members.
- Monitoring and measuring customer experience and KPIs.
- Managing periodic reporting on the progress to the management and the customer.
- Bachelors degree in Computer Science, Engineering, or equivalent experience.
- At least 5+ years of experience in building Applications.
- At least 4+ years of experience with React, TypeScript.
- Good understanding of OOPs concepts.
- Strong hands-on knowledge on HTML5, CSS3, ES6+.
- Strong understanding of the React Virtual DOM, JSX and API.
- Hands on experience on REST APIs, GraphQL and WebSocket.
- Experience with a State-management framework like Redux (with middleware) or MobX.
- Understanding of cloud-based technologies, Azure, SQL and relational databases, SOAP and REST Web-Services, JSON, XML, MSAL.
- Comfortable with concepts like Container/Presentation components, Higher Order Components.
- Worked with UI libraries like Material-UI, Semantic UI, Bootstrap or similar.
- Good understanding of CSS in JS, aka scoped-css or Styled Components.
- Unit testing with Karma + Mocha or Jest.
- Experience on working with frontend build systems and automating the same using Grunt / Gulp.
- Experience on MVC frameworks (Backbone.js, or similar) and knowledge of common JavaScript design patterns will be good to have.
- Experience of working with server-side JavaScript frameworks based on Node.js
- Exposure to Style Guides, Atomic Design.
- Exposure to Scrum and Agile methodologies.