We are looking for a skilled Fullstack Developer who has experience with both front-end and back-end technologies, databases, and system architecture to join our team. This role involves developing a SharePoint Framework (SPFx) application, but prior SPFx experience is not mandatory as training will be provided (not sure about this part). The ideal candidate will have a strong background in React.js, experience with SQL, NOSQL database, and a knack for architecting large-scale systems and back-end development.
Key Responsibilities:
Develop and maintain SPFx applications using React.js.
Design and implement user interfaces that are both functional and visually appealing.
Develop and maintain server-side applications and APIs.
Integrate and manage data from SharePoint lists or similar database structures.
Collaborate with cross-functional teams to define, design, and ship new features.
Ensure the performance, quality, and responsiveness of applications.
Identify and correct bottlenecks and fix bugs.
Help maintain code quality, organization, and automation.
Participate in code reviews and provide constructive feedback to peers.
Architect and develop scalable and reliable systems.
Required Skills and Qualifications:
Proven experience with React.js and its core principles.
Strong proficiency in JavaScript, including DOM manipulation and the JavaScript object model.
Experience with popular React.js workflows (such as Flux or Redux or Zustand).
Experience with data visualization and managing complex data structures.
Experience with back-end development, including designing and maintaining APIs.
Familiarity with SharePoint lists or similar database systems.
Understanding of RESTful APIs.
Experience with common front-end development tools such as Babel, Webpack, etc.
Strong knowledge of server-side languages (e.g., Node.js, Python etc.).
Understanding of database technologies (SQL, NoSQL) and experience with database design.
Ability to understand business requirements and translate them into technical requirements.
Strong knowledge of system architecture and design principles.
Familiarity with code versioning tools such as Git.