Location - Austin, TX
Duration: Contract
Responsibilities of the role:
• Collaborate with architects for defining and validating the architecture and the software design of the components and modules that have to be implemented on the platform;
• Design and implement components and features of the web UI using various front-end technologies, languages and frameworks;
• Define together with the back-end engineers the REST APIs for the features of the services being built using JSON format (input and output) and implement the processing and translation of the API related data;
• Use various tools for building and deploying the developed features into the micro-services architecture using Docker containers;
• Write unit tests and work with the team for defining test cases and helping with implementing the automated testing for the system;
• Collaborate with product managers and business analysts for understanding, refining and estimating the functional requirements of the system captured in user stories;
• Collaborate with the UX team for understanding and refining the UI visual design and the user experience of the features built;
• Collaborate with all the team members by using an agile process with related practices and tools.
• *Required skills:*
• t least 7-8 years of experience as a software developer building enterprise class software products;
• Minimum 4-5 years of relevant experience as a front-end developer, working with various web technologies and frameworks and with JavaScript / TypeScript programming languages;
• Experience with at least one of the latest JavaScript related web frameworks: Angular (2, 4, 5, 6), React, Vue.js and tools (Node, NPM, Grunt etc);
• Proficiency with building responsive web pages with HTML5, CSS and related frameworks (Bootstrap, Materialize, Carbon);
• Knowledge and experience with consuming and building RESTfull APIs using JSON data and best practices related to their implementation;
• Knowledge of general software architecture and software design concepts and experience of applying them in the development of commercial software products;
• Some experience with software applications built on the micro-services architecture and related tools and technologies;
• Good verbal and written communication skills, especially for technical communication;
• Experience with various development tools: IDEs, version control and others on Mac, Linux or Windows platforms;
• Experience with methodologies for software development and delivery like Agile, Scrum, Kanban and similar;
• Bachelor of Science in Computer Science / Engineering or related field is required.
Preferred skills:
• Expert JavaScript developer with recent experience of at least 2-3 years only in Angular 2 or above (Angular 4, 5, 6) framework and related techs (TypeScript, WebPack, ngrx, etc);
• dvanced knowledge and relevant industry experience (at least 7-8 years) in building complex enterprise products in one or more programming languages - JavaScript, TypeScript, NodeJS, etc.
• dvanced architecture and software design knowledge, design patterns and best practices for performance, reliability and optimization;
• Experience writing unit tests and other UI automated tests with various UI test frameworks (like Jasmine, Karma, Protractor, etc);
• Some experience and interest in UI Design and UX concepts;
• Experience with the micro-services architecture, software containers and related technologies (Docker containers, Docker Compose, Kubernetes);
• Some exposure with cloud computing technologies (like VMware) and/or public cloud providers such as AWS, Azure, Google Cloud, IBM Cloud;
• Passion for continuous improvement in both technology and process, strong problem solving skills, quick learner, attention to details;
• Master of Science in Computer Science/Engineering or related field is preferred.