Responsibilities
-
Ability to translate Wireframes and PSD Designs into functional web apps using HTML5, AngularJS, React , Node.js, and Mongo
-
Binding of UI elements to JavaScript object models
-
Creating RESTful services with Node.js
-
Architect scalable web architectures
-
Work in a cross-functional team to deliver a complete user experience
-
Create Unit and Integration tests to ensure the quality of code
-
Be responsive to change requests and feature requests
-
Write code that is cross-platform and cross-device compatible
-
Ability to wear many hats and learn new technologies quickly
Similar jobs
Key Responsibilities:
- Rewrite existing APIs in NodeJS.
- Remodel the APIs into Micro services-based architecture.
- Implement a caching layer wherever possible.
- Optimize the API for high performance and scalability.
- Write unit tests for API Testing.
- Automate the code testing and deployment process.
Skills Required:
- At least 3 years of experience developing Backends using NodeJS — should be well versed with its asynchronous nature & event loop, and know its quirks and workarounds.
- Excellent hands-on experience using MySQL or any other SQL Database.
- Good knowledge of MongoDB or any other NoSQL Database.
- Good knowledge of Redis, its data types, and their use cases.
- Experience with graph-based databases like GraphQL and Neo4j.
- Experience developing and deploying REST APIs.
- Good knowledge of Unit Testing and available Test Frameworks.
- Good understanding of advanced JS libraries and frameworks.
- Experience with Web sockets, Service Workers, and Web Push Notifications.
- Familiar with NodeJS profiling tools.
- Proficient understanding of code versioning tools such as Git.
- Good knowledge of creating and maintaining DevOps infrastructure on cloud platforms.
- Should be a fast learner and a go-getter — without any fear of trying out new things Preferences.
- Experience building a large-scale social or location-based app.
- Develop and maintain server-side logic using Node.js, JavaScript, and Python.
- Collaborate with front-end developers, designers, and product managers to create scalable and responsive web applications.
- Design and implement APIs and web services to facilitate seamless integration with other systems.
- Optimize applications for maximum speed, scalability, and reliability.
- Identify and troubleshoot performance bottlenecks and implement effective solutions.
- Ensure the security and data protection of the backend systems.
- Write efficient and reusable code, following industry best practices and coding standards.
- Conduct code reviews and provide constructive feedback to improve code quality.
- Stay up-to-date with the latest industry trends and technologies to drive continuous improvement.
- Participate in the entire software development lifecycle, from requirements gathering to deployment and maintenance.
-
Experience in Spring Boot, Jenkins, Git, Hibernate, Kubernetes, and Docker
-
Experience in the development of scalable and extensible systems using Java
-
Proficiency in Database technology such as MySQL, Oracle and MongoDB
-
Routines Sync & Async
-
Solid and fluent understanding of algorithm and data structures
-
Excellent software design, problem-solving and debugging skills
-
Demonstrated high ownership in previous projects
-
Excellent Communication Skills
-
Good understanding of Elastic Search, Redis
-
Experience working in the cloud environment, preferably AWS*.
-
Write unit tests and run automated tests through CI/CD
-
Ability to learn new and existing technologies
-
Experience in building cloud SaaS or PaaS solutions/products
Overview of the role
As a Node Developer you will be collaborate with cross-functional teams to define, design and build performant modern web applications and services. Build high-quality web applications and services by writing clean and modular code.
Must have skills
- Overall 3-5 Years of experience in writing unit and integration tests to ensure the robustness and reliability of web applications and services.
- Measure and improve the performance of microservices. Catalyse growth within the team through code reviews and pair programming to maintain high development standards
- Investigate operational issues to find the root cause and propose improvements Design, build, and maintain APIs, services, and systems across Stripe’s engineering teams.
- Expert level of experience in the design and development of Web Applications, and highly scalable distributed systems.
- Should have experience in development skills using the latest technologies including NodeJS(fastify framework), Microservices, PostgreSQL, Redis, etc. Should have exposure to NoSQL and SQL development.
- Comprehensive knowledge of physical and logical data modeling, and performance tuning.
- Should possess excellent communication, presentation, and interpersonal skills.
- Ability to work collaboratively and productively with globally dispersed teams.
- Build high-performance teams and Coach teams for successful career growth.
- Experience working with relational and non-relational databases, query optimization, and designing schema
Desired Background
Bachelors/Masters Degree in Computer Science, Information Technology
Node.js Developer Requirements:
1. Bachelor's degree in computer science, information science, or similar.
2. At least two years' experience as a Node.js developer.
3. Extensive knowledge of JavaScript, web stacks, libraries, and frameworks.
4. Knowledge of front-end technologies such as HTML5 and CSS3.
5. Superb interpersonal, communication, and collaboration skills.
6. Exceptional analytical and problem-solving aptitude.
7. Great organizational and time management skills.
8. Availability to resolve urgent web application issues outside of business hours.
Following are the things that we are looking for in our NodeJS developer:
- Full SDLC knowledge, preferably in an agile environment.
- Strong written and verbal communication skills. Strong critical thinking & problem solving skills.
- Understanding of Unix / Linux based systems.
- Hands-on exposure to deeply linked relational databases – preferably in MySQL
- Ability to take a feature or product through the full Software Development Life Cycle.
- Strong communication skills, including the ability to both collaborate well and also the ability to convey technical ideas and concepts to non-technical stakeholders.
- Identify the interaction needs and how the API. must be developed based on design comps, product specs, etc.
- Continuously evaluate and implement new technologies to maximize development efficiency.
- Address and prioritize production level bugs and application performance improvements.
- An adaptable attitude and understanding of the agile methodology.
- Unit-test code for robustness, including edge cases, usability, and general reliability.
- Collaborate with cross-functional teams to define, design, and release new features.
- Experience in Web and Mobile Applications
- Agility and ability to adapt quickly to changing requirements and scope and priorities
- Experience in Java, Python.
- Deep understanding of data structures and microservices.
- Knowledge of Node.js
- Understanding the nature of asynchronous programming and its quirks and workarounds
- Familiarity with front-end technologies
- User authentication and authorization between multiple systems, servers, and environments
- Interaction with multiple data sources
- Good understanding of SQL
- Understanding fundamental design principles behind a scalable application
- Understanding differences between multiple delivery platforms, such as mobile vs. desktop, and optimizing output to match the specific platform.
- Implementing automated testing platforms and unit tests
- Proficient understanding of code versioning tools, such as Git .
Coding in Java8, Spring, Microservices, WebFlux/Reactive Programing, Rest services, Kafka, PCF, Azure, Spring Cloud Config and NoSQL technologies.
Solve technical problems using cutting-edge technologies and best practices.
Ensure code meets the required development standards and is optimized for performance.
Unit testing for each line of new code introduced (JUnit/Mockito)
Peer code review process using GIT pull requests and Crucible (for SVN)
Propose multiple solutions to a problem, show how one option is better than another.
Ensure all aspects of technical design are correctly incorporated.
Contribute in research and implementing POCs as required.
Collaborating with onsite team in scrum ceremonies.
Who you are:
Hands on experience on Java/J2EE programming, especially on Java 8 features
Experience using latest frameworks like Spring, Spring Boot, Spring Rest, Spring Cloud Config and Webflux.
Experience in Microservices architecture & development
Experience with Test Driven Development
Experience with SQL on any of the RDBMS Oracle, PostgreSQL, My SQL
Exposure to NoSQL DB is added advantage, preferred MongoDb / Cassandra
Experience with any of the ORM frameworks Hibernate/iBatis, JDBC, JPA
Exposure to JMS Kafka, IBM MQ or Active MQ is good to have
Experience with JUNIT and any of the mocking frameworks Mockito, EasyMock, JMock
with hands on any one of the cloud platforms like PCF, Azure
Use of code repository tools like SVN, GIT
Exposure to any of the build and deployment tools like Gradle, Maven, Ant
Experience in CI/CD pipeline such as JENKINS
Experience using different design patterns, especially GoF, J2EE and Integration design patterns
Exposure to performance testing using JMeter is good to have
Ensuring the code meets the required development standards and is optimized for performance
Experience managing teams and deliveries
Providing technical design or approach for a business problem
Leading the team towards the right solution with expected quality and timelines
Experience with Agile practices
With good collaboration skills to coordinate with US based onsite team and client team.
Good team player and coordination skills
Mentoring should come naturally to you, as well as finding the right balance towards process and documentation.
Highlights:
1) You will be working on interesting technical challenges in a product centric and open-source driven environment. The role requires a good knowledge of Algorithmic Design and Architecture, Data structures, OOPS Concepts, server less architectures and complex problem solving skills.
2) You will help set a very high bar on code quality.
3) You will take ownership of product features from conception to implementation, testing deployment and support.
4) A lot of freedom on when and where you work from - just get stuff done.
5) You will open source as much as possible, and blog about cool things that you learnt and built.
6) You will help define who we become as a company.
7) You will get stock options in line with silicon valley standards.
Caveats:
1) We have a strict no-divas rule. There are a lot of smart engineers on the team but no one with an attitude / superiority complex.
2) If you think writing tests for your code, writing docs, doing customer support etc are not your cup of tea, this isn't the right role for you.
3) Similarly if you're viewing this just as a 20-40% increment opportunity over your current compensation, this isn't the right role or company for you.
This role can be the growth opportunity of a lifetime for anyone who has been operating as a backend lead and wants to grow into a full stack
Check out the links below if you'd like to learn more about us. We encourage people from underrepresented groups to apply.
1) Why ShoppinPal? - https://www.youtube.com/watch?v=cE7DgtwA0ws
2) Our hiring philosophy and process http://techstory.in/building-startup-team/