Senior Software Engineer - Payments
MishiPay
Competitive salary, bonus and potential share options
Bangalore
Please read our full advert before applying. You MUST have payments experience.
About Mishipay:
MishiPay (https://mishipay.com/" target="_blank">https://mishipay.com/) was founded in 2015 by Mustafa Khanwala (https://t.sidekickopen87.com/s3t/c/5/f18dQhb0S7kv8cW0B4W4V2M7g2zGCwVW8Jbw_83My4KPW4XXYRz3MqbyWW4Xq_Cl16gGDkf34lRCG01?te=W3R5hFj4cm2zwW4mKLS-3ZWVWBW3K2-zv1JxwY5W1Lyz993_-rybW3z9CQ13QZn51f3zd5DJ04&si=6558133869871104&pi=23656670-1dc8-41be-f0fe-f4c7fec4c64c" target="_blank">/in) bringing the best of the online checkout experience to physical stores.
We do this with our Scan, Pay and Go experience. Using our native apps on Android or iOS, or our web app available on Chrome or Safari, customers scan the products they wish to buy in store using their own phone and pay instantly. This eradicates the need to wait in line or touch store hardware.
As the world’s leading Scan and Go provider, we work with 30+ brands across 15 countries, including names like MUJI, Eroski, Flying Tiger Copenhagen, Spar, Londis and many others. The work is challenging, hard and long and requires you to be on top of your game but if the adventure and journey excite you then this is the place for you. We want to make sure that in exchange for this commitment from our team, we offer them the best package possible in terms of options, salary and bonus linked to the success of the business. You’ll also quickly see the impact of your work as we develop our products and customers
Requirements
We are looking for a Backend Engineer who possesses a passion for pushing mobile technologies to the limits and will work with our team of talented engineers to design and build the next generation of our mobile applications. You’ll play a key part in the development of our products, help to evolve and streamline our tech stack to suit our needs as we grow, and you’ll enjoy working in an environment surrounded by like-minded inspirational individuals.
Ideally we would love you to have Python, but we will also look at Java or other languages. It's essential you have worked as a Backend Engineer in a Payments domain.
Qualifications:
- Ideally, deep expertise with Python programming language and Django + DRF framework to build backend services
- Experience with Node.js and Kafka
- Substantial experience in building complex and scalable solutions using SQL databases
- Hands-on experience of database modelling for any NoSQL databases like MongoDB / Cassandra / DynamoDB or other
- Experience with full backend development life cycle in any programming language on a Linux platform
- Comprehensive operational experience including, optimizations & deployments with Kubernetes
- Experience leading multi-engineer projects and mentoring junior engineers
- Strong object oriented design skills, ability to apply design patterns, and an uncanny ability to design intuitive module and class-level interfaces
- BTech, MTech, or higher in Computer Science or related technical discipline (or equivalent)
You will:
- Take ownership of a functional area from product conception to delivery
- Contribute to engineering requirement documents (ERDs) by defining work breakdown, estimating tasks duration & setting milestones
- Take non-functional requirements (Reliability & Availability, Scale, horizontal scalability) and Tech stack decisions
- Participate in daily agile team stand-ups
- Coach and mentor junior team members
- Own code base & documentation quality
- Actively work to clear maintenance debt as we continue improving our tech
Benefits
Why MishiPay?
You’ll work with an inspirational multi-cultural team, based in our central London HQ, the US and Bangalore, who are redefining the retail industry globally. We offer a tight-knit, collaborative and exciting work environment, coupled with the opportunity to see the apps we develop live in action within some of the world’s largest retailers, impacting the lives of millions of shoppers. You’ll also get:
- Yearly Bonuses and Share Options
- Learning and Development Monthly Allowance
- A chance to be recognised in one of our two monthly award schemes (and win various prizes)
- A new MacBook
- Pitch Training
- Online Fitness Sessions
- Quarterly team-building and fun events for our London office and free lunches in Bangalore!
Similar jobs
Responsibilities:
We’re looking for someone who is enthusiastic, comfortable with uncertainty, flexible, great with people and isn’t afraid to roll up their sleeves and get their hands dirty. Every day is an opportunity to bring your vision to life, and to expand, learn, and grow. No idea is left unconsidered. No voice is left unheard.
- Supporting system design, development and maintenance
- Taking responsibility for personal technical quality standards within the team
- Assisting in defining structured practices, especially in source code management, building and deployment
- Optimising applications for maximum speed and scalability
- 2-6 years of experience
Skills
NodeJs
Instrive is a Chennai-based start-up that provides high-quality Dev-ops solutions for clients worldwide. We strive to solve problems and create value in this increasingly digital world. Instrive was founded to create high-quality products and deliver great user experiences worldwide.
Several products are being developed for both in-house purposes and our overseas clients, and we are actively expanding our team of talented professionals.
We are constantly pushing the boundaries of what is possible, and our employees have the opportunity to be at the forefront of this innovation. Our flat organisational structure encourages open communication and idea-sharing and provides ample opportunities for employees to take ownership of their work and make a real impact.
As part of our ambitious product roadmap, we need senior developers with experience in NodeJS.
Your primary responsibility will be to develop UI components, processes, documentation, and an organisation-wide style guide that can be reused across all applications.
Roles and Responsibilities:
- Develop and maintain web applications using Node.js, Express, and related technologies
- Write clean, efficient, and well-documented code.
- Collaborate with the team to design and implement new features and functionality
- Troubleshoot and debug issues to ensure a smooth user experience
- Optimize application performance and scalability
- Participate in code reviews and ensure adherence to coding standards
- Keep up-to-date with the latest technologies and industry trends
- Work with other developers, project managers, and stakeholders to understand project requirements and deliver high-quality solutions
Desired Candidate Profile:
- 3-5 years of experience in web application development using Node.js
- Strong proficiency in JavaScript, including experience with popular libraries and frameworks such as Express.js, Nest.js, and Mongoose
- Experience with front-end technologies such as HTML, CSS, and JavaScript
- Knowledge of web protocols and technologies such as HTTP, REST, and WebSockets
- Experience with NoSQL databases such as MongoDB and SQL databases like MySQL, SQLite, PostgreSQL
- Experience with Git and version control
- Familiarity with Agile development methodologies
- Strong problem-solving and analytical skills
- Excellent communication skills, both verbal and written
- Adaptability to rapid change
Good to have:
- Experience with GraphQL and Apollo
- Familiarity with AWS, Azure, or Google Cloud Platform
- Experience with containerisation technologies such as Docker and Kubernetes
- Experience with unit testing, integration testing, and end-to-end testing frameworks
- Knowledge of microservices architecture and event-driven architecture
- Familiarity with cloud-based development tools such as AWS Lambda and Azure Functions
- Familiarity with load balancing, caching, and performance optimisation techniques
- Experience working with remote teams and communicating effectively with remote stakeholders.
Perks and Benefits:
By working at the intersection of product, strategy, and technology, you will learn how to make strategic decisions, prioritise product features against business objectives, and put the user first.
In addition to the exciting work, Instrive offers our employees a comprehensive benefits package. This includes health insurance, paid time off, and professional development and training opportunities, so our employees can continue to grow and advance in their careers.
We focus on fostering a positive and collaborative work environment and are committed to helping our employees reach their full potential.
You will make a meaningful impact and create lasting connections with our outstanding team, no matter where your career takes you.
- Worked as a Node.js developer on multiple projects with relevant experience between 1 to 4+ Years.
- Extensive knowledge of Nodejs, JavaScript, APIs, web stacks, libraries, and frameworks.
- Able to work on independent nodejs projects.
- Experience in mongoDB database queries. Able to write and manage complex DB queries .
- Exceptional analytical and problem-solving aptitude.
Role: Java developer
Experience: 4+ years
Job description
○ Working experience on JAVA,Spring Boot. (on building web services?)
○ NOSQL DynamoDB knowledge is plus
○ Working experience in building micro services and distributed systems
○ Working experience on using messaging queues RabbitMQ/Kafka is plus
We are looking for an experienced Python developer who can help create dynamic software applications for our clients with their skill set. In this role, you will be responsible for gathering requirements from clients and accordingly write and test scalable code, and develop back-end components.
Technologies worked on:
Python - Django/Flask/FastAPI, Pytest/Unittest, AWS services.
Database - Postgresql/Mysql or NoSQL databases.
Requirement Description:
• Experience in designing,implementation & testing of Python Applications.
• Must have knowledge of at least one of python web framework Django/Flask/FastAPI and any of unit test frameworks(Pytest/Unittest).
• Should have a solid understanding of object-oriented programming (OOP).
• Well-experienced to perform Unit Testing and Integration Testing
• Have good experience in Agile based development approach.
• Expertise in developing enterprise-level web applications and REST/GRAPHQL APIs using
MicroServices, with demonstrable production-scale experience.
• Demonstrate strong design and programming skills ,writing optimized code.
• Working knowledge with SQL(MySQL,Postgresql etc) is mandatory and knowledge on NoSQL databases can be an addon.
• Understand Architecture Requirements and ensure effective design, development, validation, and support activities.
• Understanding of core AWS services, uses and basic AWS architecture best practices.
• Proficiency in developing, deploying, and debugging cloud-based applications using AWS.
• Ability to use the AWS service APIs, AWS CLI, and SDKs to write applications
• Ability to identify key features of AWS services while designing a solution.
• Identify bottlenecks and bugs, and recommend solutions by comparing the advantages and disadvantages of custom development
• Should contribute to team meetings, troubleshooting development and production problems across multiple environments and operating platforms
• Execute strong collaboration and communication skills within distributed project teams.
• Responsible for quality and timely deliverables for each given task.
• Knowledge on frontend technologies could be addon.
Professional Requirements:
- 2-8 Years professional development experience.
- Bachelor’s and/or Master’s degree, preferably in CS, or equivalent experience.
- Good understanding of data structures and algorithms.
- Good understanding of high level and low-level design of distributed systems.
- Experience coding in any one of the following Java or Nodejs.
- Experience building highly available distributed systems on cloud infrastructure will be plus.
- Exposure to architectural pattern of a large, high-scale web application.
Requirement/responsibilities: To take a project from scoping requirements through launch of the project. Ownership of product/feature end-to-end for all phases from the development to the production. Ensuring the developed features are scalable and highly available with no quality concerns. Work closely with senior engineers for refining the and implementation. Management and execution against project plans and delivery commitments. Participate in design and code reviews.
Compensation: Competitive as per market standards; ESOPs based on performance
Java with cloud
Core Java, SpringBoot, MicroServices |
- DB2 or any RDBMS database application development |
- Linux OS, shell scripting, Batch Processing |
- Troubleshooting Large Scale application |
- Experience in automation and unit test framework is a must |
- AWS Cloud experience desirable |
- Agile Development Experience |
- Complete Development Cycle ( Dev, QA, UAT, Staging) |
- Good Oral and Written Communication Skills |
1. Work experience between 3 years to 9 years in building large scale high user traffic consumer facing applications with desire to work in a fast paced startup.
2. Knowledge on reactive and asynchronous programming is preferable. If you have worked with coroutines, goroutines, high concurrency or optimized number of threads for processing on your backend server you could be a good fit.
3. Extremely proficient at writing performant, scalable and production ready code in Kotlin, Java (8 or above, comfortable with concepts like lambda, streams, multithreading etc), Elixir, Rust, or Golang. Should be familiar with static code analysis, code coverage and code reviews.
4. Experience with NoSQL DBs like MongoDB, Cassandra, Redis or Aerospike is required. Knowledge of graph DBs like Neo4j is preferred.
5. Strong in algorithms, problem solving and data structures.
6. Knowledge of TDD and experience with building applications integrated with CI-CD pipelines (automated build, tests and deployments).
7. Exposure to micro-services with good understanding of containers, kubernetes, logging, alerting and monitoring. Inter services communication. Should know how to handle multiple versions of APIs.
Scope:
- Responsible for overseeing the daily operations of technical development and maintenance as well as participating as an active member of the team.
- To provide technical support for the web scrapping application
- Customer & Stakeholder communication & Reporting
- To build, modify and manage Java or Python code along with Apache Nutch
- Contribute towards web crawler product development
Responsibilities:
- Analyze and assign the development and maintenance related work assigned from customer’s end to the team on regular basis.
- Regular Code / Script Reviews, Development of Java code & Python Scripts for web scraping
- Be the point of contact when it comes to technical escalations and communicate to customer or to internal team
- Analyze, Design and Develop web crawler product using JAVA spring boot and Apache storm
- Record and track team SLAs and workflows
- Should able to assist the team members in troubleshooting or understanding the technical issues
- Monitor team performance and report on metrics
- Create/Modify web page templates
- Diagnose and troubleshoot technical issues on the scripts running in production environment
- Provide email or chat support to customer of assigned activities
- Understanding on SVN or other source code management and ticketing system
- Experience in Netbeans/Eclipse/PyCharm/IntelliJ IDE
- Ensure all issues are properly logged
Required Skills:
- Must have hands-on experience in Core Java 1.8, Java Spring boot, Mysql, XPath, Linux
- Experience in troubleshooting Java /Python based applications
- Should be good in Regex and Xpath
- Good in communication, both oral and written
- Strong analytical skills to investigate and resolve customer support tickets
- Motivation to learn new skills and technologies
- Previous experience in managing teams
Preferred Skills:
- Apache Nutch, Storm, Solr, Elastic Search, Scrapy, Python, Groovy scripts, RESTful APIs
- Handled HTML/XML data format
Academic Eligibility of any below:
- Computer based Degree (BCA / MCA ./B.E./B.Tech/ M.Tech.)
What we are looking for
- At-least 3 years of experience of development on backend applications. Full stack experience is a cherry on the top!
- Experience / knowledge of designing robust systems, maintaining & scaling them
- Experience with usage of NoSQL databases like MongoDB & with SQL and RDBMS Systems
- Experience of creating applications with any of the popular frameworks in Python, Java, GoLang, Node
- Experience with JS frontend frameworks like React, Angular, Vue etc is a big plus
- Well versed with versioning systems like git
- Understanding of rest API implementation
Some of the responsibilties you will be taking up are following
- Working on creating performant and fault tolerant systems which are scalable
- Design, build, and maintain high performance, reusable, and reliable codebase
- Effectively work with product to gather requirements, gain deep understanding of use cases and business needs, and translate into design and implementation.
- Maintain code integrity and organization.
- Manage basic devops related to CI/CD
- Creating secure systems
- Lead other junior developers
- Define optimal and minimal architecture to achieve product requirements