Job Description
The Sr Software Developer (Full Stack) is responsible for using their knowledge of open-source technologies to code single-page applications (SPAs) and backend stuffs, that are highly functional and business-critical applications. Their duties include communicating with clients to identify functional and non-functional requirements, optimizing UI’s for different viewports, integrating peripherals with the UI where needed, developing backend, and running tests to ensure code is consistent, secure, and optimized.
ESSENTIAL DUTIES AND RESPONSIBILITIES:
Produce, maintain, and modify single-page applications (SPAs) using ReactJS v17+
Work with clients to develop the overall look and design of an application or website.
Leverage the inbuilt React toolkit for creating frontend features.
Consider security upfront for a secure user experience.
Create tools that enhance the user’s experience.
Ensure accessibility across many platforms, including laptops and smartphones.
Test for ease of use, speed, and other quality factors.
Develop, maintain, and debug java application.
Mastery at implementing and using spring related frameworks such as core, AOP, ORM, JDBC, JMS, Transactions, Web, Core, Test.
Mastery at debugging and implementing application using spring projects such as spring boot, batch, data, cloud, integration, and security.
Competence and comfort using SQL databases (Oracle is a plus), Kafka, Docker, Kubernetes objects, GIT.
Provide technical subject matter expertise to software development teams responsible for system designs.
Coordinate with teams across the enterprise to create a similar look and feel.
Responsible for quality control of all development deliverables.
Develop, maintain, and implement standards and methodologies for software development.
Responsible for interpreting user requirements to design and application teams.
Estimate development effort in support of project requests, based on documentation provided.
Participate in code quality checks through reviews and code quality tools.
Perform other related duties as required.
EDUCATION AND/OR EXPERIENCE:
Bachelor’s degree in computer science, related field, or equivalent work experience.
4-8 years of overall experience in a related field. Minimum of 3 years of experience at least in each stack (frontend & backend)
REQUIREMENTS/SKILLS:
Required Technology Skills
Expert in Front End Development, proficient in ReactJS v17+, React-Router, Redux-Saga, JavaScript, Typescript, Material UI, Jest, HTLM5, CSS styling tools (eg: Bootstrap)
Expert in JDK 11, Spring Boot3.x and entire Spring ecosystem (eg: Spring Cloud, Spring Batch, and Integration)
Hands-on experience with Enterprise Messaging (Kafka)
Hands-on experience working with web servers such as, Nginx and Apache
Hands-on experience with unit testing/integration testing tools like EasyMock / Mockito and TDD development
Proficient at building and developing RESTful APIs, schemas, documentation using tools like Swagger and dev testing using tools like Postman.
Hands-on experience in basic/advanced SQL programming and good understanding on oracle database concepts
Working experience in building Images and Containerization using Docker, Docker Engine using an orchestration system like Kubernetes/ OpenShift
Understanding of key design principles and SEO optimization
Ability to use customer input to create functional, creative, and user-friendly UI’s.
Experience analyzing/tuning performance.
Solid knowledge in security best practices coding and working experience in tools like Fortify.
Nice To Have Technology Skills
Experience building and deploying projects using CI/CD tools such as Jenkins.
Graphic design experience
Experience with integrating peripherals such as scanners and scales into the UI.
Experience on the cloud.
Knowledge on transforming a legacy monolithic application to a Microservice based application.
Experience in designing, building, and running load tests using applications such as Locust or JMeter
Building and managing support and monitoring dashboards for high-volume APIs using tools such as ELK or Splunk stack
API Integration Layer experience.
Other Requirements / Skills
Git/Source control expertise
Experience with Agile Software Development practices using tools like JIRA/Confluence
Ensure best practice use of applications by keeping abreast with emerging technologies to ensure optimal performance of the applications.
Strong emphasis on code quality, peer reviews, and writing test-driven code.
Experience developing on a full project life cycle, from requirements to delivery.
Ability to research new technologies and create conceptual models or solutions and present them to high-level audience across business, application, and technology domains.
Proven experience with TDD, and ability to mentor others in effective TDD
Analytical with high attention to detail
Excellent verbal and written communication skills
Advanced problem-solving skills