We are looking for a Java Developer who has the following expertise -
- Must have strong experience working on the Java Stack and strong design skills
- This person must be an expert on RESTful web services, Spring Boot etc. with a clear understanding of Microservices architectures and TDD based development
- Experience with any relational or non-relational databases is a must
- Hands-on with Spring Boot and ORMs such as Hibernate
- Middleware technologies such as Web Services, SOAP, REST, WSDL, LDAP
- Must have used tools/technologies like Eclipse, Maven, JUnit, Log4J, GIT etc.
- Working knowledge of CI/CD packaging and deployment on AWS using Jenkins, Kubernetes is good to have
- Broad knowledge of web standards for authentication such as OAuth2, SAML2, SSL, CORS, JWT, REST/SOAP etc.
Other non-negotiable requirements are -
- Extensive knowledge of AWS is good to have
- Good academics
- Good communication skills
About Tech Prescient - We are a technology-based product development engineering company, working with technology customers to build their products. We work with customers to design and develop their product stack and hence, the quality of work we produce is always premium. We are looking for equally motivated people to join our vibrant team and am sure we will make it a win-win situation
About Tech Prescient
Tech Prescient is a premium Software Product Development Services company, deeply passionate about customer success! Quality and Customer Delight is at the core of everything we do.
What differentiates us is our obsession with the quality of work we produce. Customers work with us because of our technical expertise, transparent and agile processes and unflinching attention to detail in our work. Client success is at the core of what we do.
Our vision is to be the most reliable and trusted development partner for our customers. We are extremely customer-centric, take pride in what we build and are literally obsessed with the quality of work we do for our customers.
We partner with our clients at all stages including ideation, design, development, testing, deployment, and support.
We have core expertise in the following areas:
- Product Development Engineering: Product Design, Development, Deployment, and Support using Industry best practices. Expertise in the entire process from UX/Design, Architecture, Development, QA, and Deployment with the right design and technology choice across various tiers.
- BI, Analytics, ML, and AI: Data discovery, Ingestion, Orchestration, Quality, and Automation. Managing data at scale at rest or in motion. Data governance and access management. Data Insights and Data Visualization. Machine Learning, Auto ML, NLP for text analysis, model building for classification, regression, and clustering.
- Cloud Computing, Infra and DevOps: Building and deploying Secured and Scalable multi-tenant or hybrid applications and products ‘born in the cloud’. Expertise in hosting infrastructures and AWS in particular with a thorough understanding of AWS Cloud Services and DevOps processes with considerations to Security, access controls, and Authentication protocols.
- Mobile Computing: Building enterprise-grade mobile apps with an emphasis on user experience to deliver value and drive adoption.
Similar jobs
Role Description : Senior Java Developer
As a senior developer you will be responsible to manage the software development life cycle from planning to prioritizing to testing and release. Responsibilities includes gathering system and team product requirements, building java modules and testing features before release. Should have hands on experience developing software with agile methodologies and are ready to lead our junior developers.
Responsibilities • Contribute to all phases of development lifecycle. • Planning of API workflow. • Understanding the requirements all the teams involved and planning the development process. • Write well designed, testable, efficient code. • Prepare and produce releases of software components. • Support continuous improvements by investigating alternatives and technologies and presenting these for architecture review. • Designing, implementing, and maintaining java applications that are often high-volume and low latency. • Identify bottlenecks and bugs and advise solutions to these problems. • Develop highly scalable REST APIs to use in our applications. • Guide the team and help them in any complex situations.
Required Qualifications We are looking for individuals who are curious, excited about learning, and navigating through the uncertainties and complexities that are associated with a growing company. Some qualifications that we think would help you thrive in this role are: • Minimum 8+ Years in a Java programming. • Expert hands-on knowledge of latest technology, good exposure to web technologies and open to all technologies like Java, J2EE, Spring Boot, Microservices, Cloud computing, any DB. • Very good exposure to DevOps concepts and tools, Continuous Integration and Continuous Delivery. • Quick learner believes in continuous learning and acts as a catalyst for building the culture within the organization.
• Analytical thinking skills, problem solving with strong exposure to root causing tools and techniques and ability to come up with solutions in complex situations. • Familiar with various design and architectural patterns. • Bachelor/Masters of CS/IT Engineering, BCA/MCA, B Sc/M Sc in CS/IT
Preferred Qualifications • Deep insights of Java and J2EE internals such as memory management, transaction management, etc. • Skill for writing reusable Java libraries. • Proficient understanding of code versioning tools, such as Git. • Familiarity with build tools such as Ant, Maven, and Gradle. • Ability to work without guidance and under tight deadlines. • Result oriented and focused on meeting deliverable timelines. • Teamwork and willingness to listen to others. • Communicate effectively • Good knowledge of microservices. • Expertise in developing enterprise level web applications and RESTful APIs using Microservices with demonstrable production-scale experience. • Strong background working with Linux/Unix environments. • Working experience in industry standard protocols related API security. • Clear understanding of web services and SOA related standards like REST/OAuth/JSON.
Location: Bengaluru/Udupi (NO WORK FROM HOME OPTION)
Notice Period: Immediate Joining or Maximum 1 Month
- Experience creating REST APIs, Supervisor, Horizon, Queue, Different File and Storage Systems, Migrations, Commands
- Expertise in MySQL
- Expert in JavaScript/jQuery
- Leverage the inbuilt React toolkit for creating frontend features
- Experience with implementation of authentication, authorization, redux, context, memos, pure components
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.
Responsibilities:
• Take on complex problems that span multiple components and teams.
• Independently own one or more multiple modules, which include: requirement analysis, design, development, maintenance & support
• Write extensive, efficient code to address complex modules that handle the interaction between multiple components.
• Rapidly iterate to add new functionalities and solves complex problems with simple and intuitive solutions
• Produce architecture with clean interfaces, that are efficient and scalable
• Participate and contribute to architectural discussions
• Solve production issues. Investigate and provide solutions to minimize the business impact due to the outage
• Continuously improve performance metrics of modules you own.
• Collaborate effectively across teams to solve problems, execute and deliver results
Requirements:
• Experience: 3+ years
• A Bachelor's or Master's Degree in Computer Science
• Software engineering and product delivery experience, with a strong background in algorithms
• Experience in architecting & building real-time, large-scale e-commerce applications
• Experience with high-performance websites catering to millions of daily traffic is a plus
• Excellent command over Data Structures and Algorithms
• Experience with web technologies, Go/Java/Python
• Language: GO or Python
• Strong expertise in DS and Algo
• Strong leadership skills - have experience mentoring, building products from scratch or incumbent in design and architecture.
• Have worked in the scaling of the system right from scratch.
• Someone worked in small user base to a large user base and wrote optimized code
• Both HLD and LLD
👋🏼We're Nagarro.
We are a Digital Product Engineering company that is scaling in a big way! We build products, services, and experiences that inspire, excite, and delight. We work at scale across all devices and digital mediums, and our people exist everywhere in the world (19000+ experts across 33 countries, to be exact). Our work culture is dynamic and non-hierarchical. We are looking for great new colleagues. That is where you come in!
REQUIREMENTS:
- Must have Skills: Node JS, Microservices architecture (MSA) (Capable),Javascript/Typescript, AWS S3/ LAMBDA/ EC2/DYNAMODB
- Cloud developer with a minimum of 6 years of experience Technical skills in most of the following areas
- Expert in developing REST Services and APIS using JavaScript, TypeScript NodeJS is a must
- Implementing Serverless Software development using Amazon Lambda written in NodeJS is desirable.
- Services including AWS IoT, S3, RDS, IAM, Cognito, SNS, VPC, EBS, AWS Route 53, and Cloud Watch is a must
- Proficient in database concepts including schema design, querying, performance tuning, and debugging (Both SQL and No-SQL databases)
- Strong experience in designing and developing enterprise cloud-based IoT solutions using AWS
- Develop Web, APIs, IoT & Cloud based solutions is a must
- Ability to write automated unit test cases using mocking frameworks (Jasmine, Mocha, chai, Jest, etc.)
- Experience in modern data architectures (e.g. Micro Service, event-driven architectures, stream processing, and integrating real-time analytics into customer applications is desirable
- Have a good eye for NFRs (Scalability, extensibility, reliability, etc.) while evaluating design. should be able to Converts Solution Requirements into logical systems & subsystems
- Innovates and creates new ideas and have the ability to develop quick proof of concepts and validate with the customer.
RESPONSIBILITIES:
- Understanding functional requirements thoroughly and analysing the client’s needs in the context of the project
- Envisioning the overall solution for defined functional and non-functional requirements, and being able to define technologies, patterns, and frameworks to realize it
- Determining and implementing design methodologies and tool sets
- Enabling application development by coordinating requirements, schedules, and activities.
- Being able to lead/support UAT and production roll outs
- Creating, understanding, and validating WBS and estimated effort for given module/task, and being able to justify it
- Addressing issues promptly, responding positively to setbacks and challenges with a mindset of continuous improvement
- Giving constructive feedback to the team members and setting clear expectations.
- Helping the team in troubleshooting and resolving of complex bugs
- Carrying out POCs to make sure that suggested design/technologies meet the requirements.
• Hands on RDBMS experience with Oracle/ PostgreSQL/ MySQL/SQL
Server including transaction management, SQL programming, data
modelling, etc.
• Must have proven track record of logical data modeling and physical
data modeling
• Experienced in using ORM frameworks like Hibernate, etc.
• Basic understanding of NoSQL systems like Redis (Key-Value store),
MongoDB (Document store), Elasticsearch (Search / Document store)
• Design, Development & Deployment of Microservices using Spring
Boot or any other framework.
• Understanding of building EDA-based (Event Driven Architecture)
systems.
• Basic understanding of any public cloud (AWS, Azure, GCP)
• Ability to design & architect a system that exhibits basic
characteristics like modularity, configurability / extensibility, scalability
& availability.
• Maven / Gradle
• Experience in using & configuring Jenkins.
• Experience in using & configuring SonarQube.
Essential Requirements
• Hands-on with Java Platform (1.5 & above) having proficiency in OOPs
concepts, Collections,
• Generics, Streams, Multi-threading (Executor Framework), Functional
Programming.
• Design & Development of REST Web Services (Spring MVC / REST /
Jersey / Apache CXF, etc.)
• Hands-on experience using Spring framework (4.x & above)
• Core / Beans
• MVC / REST
• Security
• Spring Data / JPA
• Spring Test / JUnit
• JMS
Fluency in modern JavaScript (ES6/7) and other frontend fundamentals (HTML5,
CSS3) and Node.js
Exposure to React( native) basics
Experience with AWS, CI/CD and DevOps
Experience with Web Security
Basic exposure to Go is valuable but not necessary
Willingness to travel for onsite assignments outside India
This leads to a very interesting and challenging use case in the emerging field of large scale distributed HTAP, which is still not mature enough to provide a solution out of the box that works for our scale and SLAs. So, we are building a solution that can handle the complexity of our use case and scale to several trillions of rows. As a "Database Engineer", you will evolve, architect, build and scale the core data warehouse that sits at the heart of Clarisights enabling large scale distributed, interactive analytics on near realtime data.
What you'll do
- Understanding and gaining expertise in existing data warehouse.
- Use the above knowledge to identify gaps in the current system and formulate strategies around what can be done to fill them
- Avail KPIs around the data warehouse.
- Find solutions to evolve and scale the data warehouse. This will involve a lot of technical research, benchmarking and testing of existing and candidate replacement systems.
- Bulid from scratch all or parts of the data warehouse to improve the KPIs.
- Ensure the SLAs and SLOs of data warehouse, which will require assuming ownership and being oncall for the same.
- Gain deep understanding into Linux and understand concepts that drive performance characteristics like IO scheduling, paging, processing scheduling, CPU instruction pipelining etc.
- Adopt/build tooling and tune the systems to extract maximum performance out of the underlying hardware.
- Build wrappers/microservices for improving visibility, control, adoption and ease of use for the data warehouse.
- Build tooling and automation for monitoring, debugging and deployment of the warehouse.
- Contribute to open source database technologies that are used at or are potential candidates for use.
What you bring
We are looking for engineers with a strong passion for solving challenging engineering problems and a burning desire to learn and grow in a fast growing startup. This is not an easy gig, it will require strong technical chops and an insatiable curiosity to make things better. We need passionate and mature engineers who can do wonders with some mentoring and don't need to be managed.
- Distributed systems: You have a good understanding of general patterns of scaling and fault-tolerance in large scale distributed systems.
- Databases: You have a good understanding of database concepts like query optimization, indexing, transactions, sharding, replication etc.
- Data pipelines: You have a working knowledge of distributed data processing systems.
- Engineer at heart: You thrive on writing great code and have a strong appreciation for modular, testable and maintainable code, and make sure to document it. You have the ability to take new initiatives and questioning status quo.
- Passion & Drive to learn and excel: You believe in our vision. You drive the product for the better, always looking to improve things, and soon become the go-to person to talk to on something that you mastered along. You love dabbling in your own side-projects and learning new skills that are not necessarily part of your normal day job.
- Inquisitiveness: You are curious to know how different modules on our platform work. You are not afraid to venture into unknown territories of code. You ask questions.
- Ownership: You are your own manager. You have the ability to implement engineering tasks on your own without a need for micro-management and take responsibility for any task that has been assigned to you.
- Teamwork: You should be helpful and work well with teams. You’re probably someone who enjoys sharing knowledge with team-mates, asking for help when they need it.
- Open Source Contribution: Bonus.
- 3+ to 6 years of hands-on coding experience in Java preferably Version 8
- Building RESTFUL services using Spring boot, Spring WS, etc
- Hands on experience in Microservices
- Data-Layer Development: MySQL, NoSQL, ORM