Similar jobs
About the Role
As a result of our rapid growth, we are looking for a Java Backend Engineer to join our existing Cloud Engineering team and take the lead in the design and development of several key initiatives of our existing Miko3 product line as well as our new product development initiatives.
Responsibilities
- Designing, developing and maintaining core system features, services and engines
- Collaborating with a cross functional team of the backend, Mobile application, AI, signal processing, robotics Engineers, Design, Content, and Linguistic Team to realize the requirements of a conversational social robotics platform which includes investigate design approaches, prototype new technology, and evaluate technical feasibility
- Ensure the developed backend infrastructure is optimized for scale and responsiveness
- Ensure best practices in design, development, security, monitoring, logging, and DevOps adhere to the execution of the project.
- Introducing new ideas, products, features by keeping track of the latest developments and industry trends
- Operating in an Agile/Scrum environment to deliver high quality software against aggressive schedules
Requirements
- Proficiency in distributed application development lifecycle (concepts of authentication/authorization, security, session management, load balancing, API gateway), programming techniques and tools (application of tested, proven development paradigms)
- Proficiency in working on Linux based Operating system.
- Proficiency in at least one server-side programming language like Java. Additional languages like Python and PHP are a plus
- Proficiency in at least one server-side framework like Servlets, Spring, java spark (Java).
- Proficient in using ORM/Data access frameworks like Hibernate,JPA with spring or other server-side frameworks.
- Proficiency in at least one data serialization framework: Apache Thrift, Google ProtoBuffs, Apache Avro,Google Json,JackSon etc.
- Proficiency in at least one of inter process communication frameworks WebSocket's, RPC, message queues, custom HTTP libraries/frameworks ( kryonet, RxJava ), etc.
- Proficiency in multithreaded programming and Concurrency concepts (Threads, Thread Pools, Futures, asynchronous programming).
- Experience defining system architectures and exploring technical feasibility tradeoffs (architecture, design patterns, reliability and scaling)
- Experience developing cloud software services and an understanding of design for scalability, performance and reliability
- Good understanding of networking and communication protocols, and proficiency in identification CPU, memory & I/O bottlenecks, solve read & write-heavy workloads.
- Proficiency is concepts of monolithic and microservice architectural paradigms.
- Proficiency in working on at least one of cloud hosting platforms like Amazon AWS, Google Cloud, Azure etc.
- Proficiency in at least one of database SQL, NO-SQL, Graph databases like MySQL, MongoDB, Orientdb
- Proficiency in at least one of testing frameworks or tools JMeter, Locusts, Taurus
- Proficiency in at least one RPC communication framework: Apache Thrift, GRPC is an added plus
- Proficiency in asynchronous libraries (RxJava), frameworks (Akka),Play,Vertx is an added plus
- Proficiency in functional programming ( Scala ) languages is an added plus
- Proficiency in working with NoSQL/graph databases is an added plus
- Proficient understanding of code versioning tools, such as Git is an added plus
- Working Knowledge of tools for server, application metrics logging and monitoring and is a plus Monit, ELK, graylog is an added plus
- Working Knowledge of DevOps containerization utilities like Ansible, Salt, Puppet is an added plus
- Working Knowledge of DevOps containerization technologies like Docker, LXD is an added plus
- Working Knowledge of container orchestration platform like Kubernetes is an added plus
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.
Backend - Principal IC/Lead SDE
Minimum Requirements
- 8+ years development experience
- Solid Experience and knowledge of
- Coding and debugging using Object Oriented languages like Java, C++, Go or similar languages.
- Database design, Query optimizations, pitfalls (both SQL, NoSQL)
- Developing Scalable, distributed systems and patterns
- Developing REST and/or GraphQL based APIs
- Writing and driving Clean code in a team (via SOLID principles).
- Knowledge of writing unit tests
- NodeJS
Good to have
- Experience with GoLang/Python
- Experience with Microservices, designs and patterns
- Experience with Dockers/Kubernetes and orchestration
- Familiarity with Reactive programming and patterns like RxJs/RxJava, CQRS, Eventing systems
- Experience with automating DevOps lifecycle
- Proficiency with
Responsibilities
- Work with Product team and Drive design, development and deployment of the overall architecture and individual modules to support our Apps , website and internal tools
- Ensure the entire stack is designed and built for availability, speed, scalability, testability, debugging
- Design and development of our REST and GraphQL API
- implement and improve continuous integration and deployment
- Serve as a technical lead for the team
- Mentor team members
Key Responsibility Areas:
- Develop tools and applications by producing clean, efficient code.
- Determine operational feasibility by evaluating analysis, problem definition, requirements, solution development and proposed solutions
- Perform validation and verification testing and debud code.
- Work collaboratively with others to achieve goals
- Experience working in an agile environment
Required Skills:
- Experience in implementing Object-Oriented Python, Django.
- Good understanding on Django
- Experienced in interfacing with *third party API’s using REST
- Worked with varieties of Relational Databases (RDBMS) like SQLite, MySQL, PostgreSQL.
- Experience in Version Control with Git and Bitbucket.
- Experience with JIRA the development progress and tracking deadlines of the project
- 5-7 years of web application and web site development with Drupal (corporate web sites, ecommerce sites, portals, mobile sites).
- 4+ years managing web application projects.
- Thorough understanding of the Software Development Lifecycle (e.g. Requirements, Design, Development, Testing) and exposure to Agile or iterative SDLCs.
- Experience with one or more modern JavaScript frameworks (React, Angular, Vue) React preferred
- Experience writing semantic, responsive HTML.
- Experience writing object-oriented PHP.
- Experience implementing web solutions in Drupal and PHP.
- Experience with Drupal’s theme layer.
- Experience with Drupal’s module system and experience writing or extending modules.
- Experience with Drupal’s Migrate framework.
- Experience with Drupal JavaScript behaviors.
- Experience with Acquia provided tooling and development workflows for Drupal 8/9 preferred.
- Experience implementing, accessibility standards (Section 508, WCAG).
- Experience with CSS preprocessors (Sass, Less).
- Experience with version control tools (Git).
Revise is a protocol that enables building dynamic NFTs. It helps connect NFTs to real-world events and make them interactive.
While this is an individual contributor role, you’ll be involved in many aspects– helping evolve our existing architecture, working with the team to improve operations, and implementing new features and functionality.
The job involves the following responsibilities:
-
Build robust and scalable software in Nodejs
-
Design and create services and system architecture for your projects, and contribute and
provide feedback to other team members
-
Help improve our code quality through writing unit tests, automation, and performing
code reviews
-
Participate in brainstorming sessions and contribute ideas to our technology, algorithms,
and products
-
Work with the product and design teams to understand end-user requirements, formulate
use cases, and then translate that into a pragmatic and effective technical solution
-
Dive into difficult problems and successfully deliver results on schedule
A backend developer works alongside front-end developers, full stack developers, programmers or UX specialists to create comprehensive digital solutions for business needs. They make sure the website is scalable and that it can still function when hit by large loads—be that traffic or demanding scripts. They are also tasked with
maintaining and testing existing back-end elements to ensure they’re as fast and efficient as possible. Data storage also comes under their remit, which requires them to have a good knowledge of data security and compliance.
Duties and responsibilities:
• Analyses, designs, develops, and codes REST API using NodeJS more programming languages, Web and Rich Internet Applications.
• Supports applications with an understanding of system integration, test planning, scripting, and troubleshooting.
• Assesses the health and performance of software applications and databases.
• Establishes, participates, and maintains relationships with business units, customers and subject matter experts to remain apprised of direction, project status, architectural and technology trends, risks, and functional/integration issues.
• Defines specifications and develop programs, modifies existing programs, prepares test data, and prepares functional specifications.
• Analyses program and application performance using various programming languages, tools and techniques.
• Manage staff of 2-3 & manage microservices of software most effectively and efficiently.
• Reviews project proposals evaluate alternatives, provides estimates and makes recommendations.
• Designs and defines specifications for systems.
• Identifies potential process improvement areas and suggests options and recommends approaches
System Design Concepts:
- Scaling
- API Gateway
- Microservices
- Message Queue
Qualifications:
Graduation - B. Com + IT Certification/ B.Sc. - IT / B.Sc. Comp Sc./ B.Sc. IT/ BE-IT/ BE-Comps
Technical Skills:
Oracle, SQL, Java, Node JS, REST API Debugging.
Soft Skills:
Client Management; Good interpersonal skills; Good Communication