Job Description
What you'll be doing
Key Responsibilities:
- Develops applications that effectively accomplish client objectives and user needs.
- Designs and writes code for applications and maintain applications databases.
- Analyzes and edits existing software applications to improve and optimize functionality, fix problems, and enable their use on new hardware platforms.
- Remodels and adapts applications as needed to optimize performance.
- Identifies specific client needs and preferences related to the application.
- Tests applications extensively to ensure they are error and bug-free.
- Installs applications and acts as technical advisor.
- Communicates with relevant internal technical stakeholders to obtain information on project limitations, performance requirements, and interfaces.
- Consults with clients in the design phase to determine client needs.
- Produces software documentation following company software process and templates.
- Participates in software product review meetings and team meetings.
- Performs any other related task as required.
Knowledge and Attributes:
- Developing and implementing UI components using React.js.
Collaborating with cross-functional teams to design and ship new features. Building reusable components and front-end libraries for future use.
Translating designs and wireframes into high-quality code.
Proficiency in React.js and its core principles.
Strong JavaScript, HTML5, and CSS3 skills.Experience with popular React.js workflows (such as Redux).
Experience with RESTful APIs and asynchronous JavaScript. Knowledge of modern authorization mechanisms, such as JSON Web Tokens. Understanding of front-end build tools, pipelines and test frameworks.
Worked with source control like Git. Understanding of CI/CD, rapid delivery on production.
Ability to write quality unit and end–to–end tests; debug and optimize existing and new code.
Experience with NodeJS for building backend services is preferred.
Academic Qualifications and Certifications:
- Bachelor's degree or equivalent in computer science or software engineering or related field.
- Certification in various programming languages, for example (but not limited to) Java, Perl, Python, C++ preferred.
Required Experience:
- Seasoned Software Applications Engineering, Software Development experience, or related work experience.
- Seasoned experience with Programming Languages such as (but not limited to) C, C++, Java, Python.
- Seasoned experienced with Linux or Unix and Windows operating systems.
- Seasoned experience working with SQL.
- Seasoned project management experience and/or experience working in an Agile environment.