Software Engineer – Full Stack
Job Description:
BASIC PURPOSE:
The Software Engineer - Full Stack is responsible for developing and maintaining modular, reusable back-end components using Node.js, Java, and .NET. Additionally, the Engineer will be responsible for developing and maintaining reusable user interface components with React.js, React Native, Next.js and Angular.
ESSENTIAL FUNCTIONS:
- Contribute to backend design, technical direction, and backend architecture including collaborating
- with various teams
- Translate designs and process wireframes into high-quality code
- Design efficient and reusable backend systems that drive complex applications, front-end systems
- that drive complex web applications, components that drive mobile applications
- Implement the features and user interfaces using React.js, React Native, and Angular
- Optimize components for maximum performance across a vast array of web-capable devices and browsers.
- Create microservices using Node.js, Java, and .NET.
- Building cloud applications with Amazon Web Services (AWS) using services like API Gateway, Lambda, SQS, EventBridge, and S3.
- Build reusable components and front-end libraries for future use utilizing technologies like Stencil and Storybook.
- Create testable, universally available applications and services with monitoring and alerting
- Identify and resolve performance and scalability issues
- Stay on top of technology changes in the market and continuously look for opportunities to leverage modern technology
- Participate in code reviews, proactively identifying and mitigating potential issues and defects as well as assisting with continuous improvement
- Develop automated testing plans and automate the delivery of components using CI/CD.
- Optimize components for maximum performance across a vast array of devices
- Participate in the execution of business goals
- Mentor less experienced team members
- Collaborate with Product Designers, Product Managers, and other Software Engineers to deliver
- compelling user-facing products
- Must be able to perform the essential functions of the job, with or without reasonable accommodation.
- Other duties as assigned
REPORTING RELATIONSHIPS:
- Reports to Senior Manager, Digital Applications
QUALIFICATIONS:
- Bachelor’s degree in Computer Science / related engineering field OR equivalent experiencein related field
- 7+ years of experience in backend development, front end development, and mobile development (Android and iOS)
- 3+ years of experience in Node.js (JavaScript & Typescript), Java, .NET C#
- Strong understanding of JavaScript and related technologies in Amazon Web Service (AWS), Azure, Google Cloud.
- Experience with React Native concepts and workflows, as well as native Android and iOS tools.
- Experience with popular Node.js frameworks (Express.js, Serverless Framework, etc.)
- Strong proficiency in JavaScript, including DOM manipulation, the JavaScript object model, and the event loop.
- Proficient in profiling and improving the performance of both back-end and front-end components, as well as mobile applications.
- Familiarity with new specifications of ECMAScript and Typescript.
- Understanding the nature of asynchronous programming and its quirks and workarounds.
- Good understanding of any server-side templating languages .
- Experience with RESTful APIs and GraphQL/AppSync.
- Have a strong understanding of concepts like concurrency, parallelism, event driven architecture.
- Have experience with REST-ful APIs for internal and external products.
- Experience with technologies like Redis, Elasticsearch, NoSQL, RDBMS, Queues, Event Bus and Cloud
- Knowledgeable of modern authorization mechanisms such as JSON Web Tokens, oAuth2, AWS Cognito, Key Cloak.
- Ability to author modern CI/CD build pipelines and familiarity with the latest industry tools like Terraform and AWS CDK.
- Experience with common JavaScript development tools such as Babel, Webpack, NPM, Node, etc. and testing frameworks (Jest, Mocha, etc.)
- Strong understanding of HTML, CSS, JavaScript, Typescript, and related web technologies along with progressive web applications
- Experience with popular React.js and Next.js workflows (Flux, Redux, etc.).
- Knowledgeable of isomorphic React.
- Familiar with modern front-end pipelines and tools like micro-frontends, Next.js, StencilJs,
- Ability to understand business requirements and translate them into technical designs.
- Familiarity with Git code versioning tools.
- Good written and verbal communication skills.
- Able to work autonomously with little direction. They should be self-motivated, proactive, and able to take ownership of their work. The candidate should have a history of delivering high-quality work on time and have excellent critical thinking skills. They should be able to prioritize tasks and manage their time effectively, while keeping stakeholders informed of progress. The candidate should be comfortable with ambiguity and be able to make decisions independently.
- Great collaborator.
CRITICAL COMPETENCIES FOR SUCCESS:
- Analytical Skills: Demonstrate aptitude towards analytical and critical thinking skills and the ability to conceptually pull together patterns or connections that are not clearly related; ability to assess relevant facts, identify alternative approaches and provide the best course of action.
- Strategic Agility: Eagerness and ability to learn quickly and leverage a flexible mindset in response to shifting dynamics, adversity, and/or change; continually pushes oneself, their teams, and their businesses to learn, to generate innovative ideas
- Disciplined Execution: Orientation towards a process-focused, decisive course of action that will ensure client/customer needs are met with a high standard of excellence, urgency, and predictability; focused on the task at hand in the face of ambiguity and applies past experiences and expertise to consistently pull through results.
- Organizational Collaboration: Ability to partner across organizational lines and work cooperatively within and outside one’s own team to best serve client needs and exceed the expectations of end customers and clients; actively supports key decisions and promote a spirit of teamwork to demonstrate the commitment to the company.
WORK CONDITIONS:
- Must possess comfort in learning, training, and engaging with others through Microsoft Teams and Zoom
Company Profile
We specialize in providing a gamut of IT and ITES (Information Technology Enabled Services) services to our parent company and its subsidiaries. We are well-equipped with technology and business expertise to provide smarter and innovative solutions to our customers. Not only do we work with a difference; we work to make a difference.
Apply Now
- Interested candidates are requested to apply for this job.
- Recruiters will evaluate your candidature and will get in touch with you.