SDE 2 Java Developer
at "Leading SASS based B2B product company into AI platform
Similar jobs
Engineering Manager – Backend
Opportunity in this role / Why should you join us?
Series D funded supply chain startup.
Requirements
- Software engineering experience of greater than or equal to 7 years
- Experience managing a technical team of at least 3 people
- Exposure to consumer facing products
- Strong technical background and ability to contribute to design and review
- Familiarity with our tech stack or an analogous tech stack
Technologies Used
- Web application frameworks : Ktor, Spring Boot, Ruby on Rails, Node.js, Java Play, AWS Lambda
- Languages : Kotlin, Java, Ruby, Javascript, Python
- Datastores : PostgreSQL, Aerospike, Redis, DynamoDB, Amazon Redshift
- Communication : HTTP, Amazon SQS, Sidekiq, Amazon SNS
- Server management : Amazon ECS, Docker
- Design frameworks : Domain Driven Design, Clean Architecture, Layered Architecture
Roles and Responsibilities
This role requires a person to drive the engineering of a set of products by aligning with business and product
stakeholders and building and upskilling a team to aid in this. The responsibilities include:
Business and product alignment and planning
- Work closely with business and product stakeholders to understand and align with product initiatives and iterations.
- Help shape the engineering requirement by aligning with the product manager and fleshing out concepts and user flows.
- Formalize business requirements into roadmaps and sprints.
- Product and system development
- Drive high level modeling and design for projects, also focusing on non-functional aspects, including but not limited to database design, communication protocols, deployment systems, etc.
- Drive adoption of design frameworks like domain driven design, clean architecture, etc., resulting in a robust layered architecture.
- Drive good code review practices, using the review process as a mentoring tool to upskill people.
- Ensure test coverage of systems, partly through unit and integration testing, and partly through blackbox testing by collaborating with the Quality Assurance team, via good testing practices.
- Project Management
- Drive the execution of the project by delegating tasks effectively.
- Resolve blockers through technical expertise, negotiation and delegation.
- Estimate timelines and ensure adherence to them through effective sync-ups and course corrections.
- Maintenance
- Formulate SLAs and oversee their adherence for the various systems, effectively tracking issues and performance inefficiencies.
- Performance monitoring and optimization for systems.
- Drive technical re-design, remodeling and refactoring of systems for robustness and sustainability.
- Team Management
- Typically manage a team of 3 - 6 members and a portfolio of 3 - 6 products.
- Do periodic assessment of reportees, chart their career growth paths and train them.
- Recruit members into the team by collaborating effectively with the recruitment team.
Product Overview
You will be contributing to products concerning both customers and partner drivers. Product sectors
include:
- Growth : You’ll build tools to help boost user growth on the platform including our industry bestdriver on-boarding, training and certification system, referral system, and lead managementmmodels.
- Lifecycle Management : Build tools to help users engage with the platform better, which includes rewards and recognition module, subscription service, account management tools, partner and customer wallets and payout modules, and churn detection systems among others.
- Transaction Experience : You’ll help deliver the most delightful booking experience to our customers and drivers. As part of this team, you’ll be responsible for our core booking system, pricing and payment systems, location tracking and filtering services, fraud prevention systems, and in-app ticketing and support among others.
- Fulfilment : As part of the fulfilment team, you’ll work on systems which ensure high degree of ride fulfilment on the platform. Tools including allocation methodologies and system, dynamic pricing, dynamic partner routing, and partner re-activation tools among others.
- Enterprise Solutions : You’ll help Porter’s enterprise customers achieve delivery excellence. You’ll build tools for contract management, fleet management, fleet and route optimisation tools, alerting and monitoring tools, and analytics suite among others.
Software Engineer
Opportunity in this role / Why should you join us?
- You are your own master. We don't preach you, we just allow you to Innovate, Iterate, Learn and Adapt
- Work with one of India's leading fintech unicorn company
- ESOPs in the company
Requirements
- 3+ years and above exposure in the art of writing codes and solving problems for large scale
- Extensive and expert programming experience in any one programming language (strong OOPS skills preferred). Deep experience in a java programming language
- A solid foundation in computer science, with strong competencies in data structures, algorithms, and software design.
- Have a penchant for solving complex and interesting problems.
- BE/BTech, MTech in Computer Science or related technical discipline (or equivalent).
- Excellent coding skills – should be able to convert the design into code fluently Good skills to write unit & integration tests with reasonable coverage of code & interfaces - TDD is a plus
- Experience in building highly scalable business applications, which involve implementing large complex business flows and dealing with the huge amount of data. Experience with
multi-threading and concurrency programming
- Ability to switch between the technologies and learn new skills on the go.
Roles and Responsibilities
- Drive discussions to create/improve the product, process and technology
- Build abstractions and contracts with separation of concerns for a larger scope
- Rapid prototyping
- Robust and scalable web-based applications
- Do high-level design with guidance; Functional modelling, break-down of a module
- Thinking platforms & reuse, the open-source contribution will be a plus
- Do incremental changes to architecture: impact analysis of the same
- Do performance tuning and improvements in large scale distributed systems
- Mentor young minds and foster team spirit.
-
Executes the development, Maintenance, and enhancements of varying complexity levels across platform systems
-
Translates the Business Requirements and specifications into related solutions designs to understand business needs and functional specifications
-
Evaluates project deliverables to ensure they meet the specifications and architectural standards
-
Write and review technical documents, including design, developments, and code review
-
Provide technical support to team
-
Work independently and handle product responsibilities with stakeholders and good communication skills
-
Good understanding of performance and security aspects of software development
-
Working experience in Agile Software Methodology (Scrum and Kanban)
-
6+ years of experience in Software development using Java and J2EE technologies
-
Experience in designing front end interfaces using HTML, CSS, Javascript, iQuery, AJAX
-
Experience in Build tools like Maven
-
Strong hands-on experience in developing microservices using Springboot
-
Strong hands-on experience in Spring Framework such as Spring MVC, IDC, AOP and Spring JDBC
-
Experience in Core Java, Multi-threading, OOPs, Collections and servlets
-
Unit and integration testing using Junit
-
Experience in databases like MySQL, DB2 and Oracle
-
Strong design skills and also experience in working with Design patterns to solve problems
-
Good to have GCP, AWS, Azure public cloud platforms
• Expertise in OOPS and coding practices and exposure to TDD
• Should be able to define deployment roadmap and requirements for DevOps implementation.
• Versatile in choosing appropriate tools and frameworks for the Core and advance java development procedures.
• Good in Spring Boot and latest java methodologies to suggest best practices and proven solutions to the business.
• Expert in service oriented solutions and micro services architecture (REST). Should have been a part of monolithic to micro services rearchitecture.
• Exposure towards No-Sql databases such as Cassandra or Mongo DB.
scale distributed systems
You will
- Work closely in the respective software engineering team in design and development of
high scale mission critical applications.
- Drive the design and development of one or more components/applications in your
product by establishing robust low level design, good code practices, and unit testing.
- Partner with cross functional teams like product management, operations and business
to propose and influence the design of platforms/systems for higher scale and
complexity.
- Mentor software engineers in the team in solving complex problems and delivering
great quality software, do regular code reviews and play a key role in overall
deliverables.
What do we look for
While we are quite technology agnostic, we particularly look for some concepts that go behind
building high quality products for our consumers.
Coding : Extensive coding in one the following: Java/Python/ROR/Golang
Design : System design, design patterns, designing data structures, source code and
performance algorithms.
Cross functional : Ability to work with diverse teams like Products, business and
operations. Your ability to gather requirements, attention to detail and learnability
would really matter
Experience :4 to 7 years of experience in consumer internet companies or high
scale SAAS
- Java, J2EE
- Microservices
- Spring Boot
- JPA, REST API, JSON, JWT, OAuth, Spring Security, Swagger
- Oracle / MySQL / Postgres DB
- Angular / React / React Native
- JIRA, Bitbucket
Must-Have -
- Excellent knowledge of Core Java and Spring
- Strong experience in REST API and web services
- Experience in Oracle / Mysql / Postgres DB
- Should be efficient with Java J2EE and related technologies
- Should have very good communication skills and analytical skills.
- Should have good knowledge in Software Development Life Cycle and Agile methodologies.
- Good knowledge of current / emerging technologies and trends
- Good analytical and problem-solving skills
- Excellent written and verbal communication skills. High levels of initiative and creativity
- Good communication skills with all stakeholders, good team player with ability to mentor juniors
Good to Have:
- Knowledge in Banking Domain
- Full-stack developers with knowledge and understanding of Javascript and associated technologies like React, Angular, HTML5, CSS will have an advantage.
In this role, you should be able to write functional code with a sharp eye for spotting defects. You should be a team player and an excellent communicator. If you are also passionate about the .NET framework and software design/architecture, we- d like to meet you.
Your goal will be to work with internal teams to design, develop and maintain software.
Responsibilities and Duties :
- Writing clean, scalable code using .NET programming languages.
- Build high-quality scalable and predictable web applications on the .NET Technology stack and maintain internal and external facing web applications.
- Creating and integrating services and APIs using Web API 2 for various products and applications.
- Working on system architecture and databasing in MongoDB, MySQL, and NoSQL.
- Make regular modifications to existing software for error correction, adaptation to new hardware, and improving overall function and performance
- Evaluate new code for reliable architecture, stability, reusability, performance, automation, security, and metrics
- Using JSON to store and transport data.
- Working with other team members and the team lead using Project Management Tools and Version Source Control to create industry-leading technological products.
Skills required:
- 1 - 3 years of experience in MongoDB.
- Knowledge about AWS Cloud is an added advantage.
- Knowledge of .NET development and lifecycle methods in C# Language.
- Experience in making Web API 2 including routes, class components, async methods, parallel programming, authentication, and authorization, etc.
- Experience and hands-on knowledge of data management methods with MongoDB, MySQL, or NoSQL, etc.
- Should have experience and understanding of using JSON.
- Familiarity with working with .NET Framework, JavaScript, HTML. Knowledge of .NET Core is preferred.
- Knowledge and experience working with AWS Cloud and cloud computing techniques is an added advantage, but not a requirement.
- Having a BSc Degree in Computer Science is optional but should have some educational knowledge of computer science.