
-
Expert knowledge of computer science, with strong competencies in data structures, algorithms,
and software design.
-
Strong understanding of end-to-end architectures and development frameworks; knowledge
across tiers in a multi-tier cloud environment including load balancers, web servers, application
containers, data stores, and distributed caches.
-
Minimum 6 years of experience with deep technical knowledge and hands on skills in Java.
-
Has worked extensively on caching technologies such as Redis, memcache.
-
Should be strong with Data Strcutures, Algorithms & OOPs concepts.
-
Worked on NoSQL databases such as MongoDb.
-
Designed and developed highly scalable multi-threaded large scale distributed systems.
-
Well versed with services and micro-services architecture.
-
-
Usage of containers, virtual machine systems, cloud computing.
-

About Freelancer
About
Connect with the team
Company social profiles
Similar jobs
About Performio
Headquartered in Irvine, California, and with offices in San Francisco and Melbourne, Performio continues to offer sales performance management software for businesses looking to automate their sales compensation calculations and provide increased transparency to their sales reps.
Used by large global enterprises such as Veeva, GrubHub, Johnson & Johnson, and Vodafone - as well as growing mid-market companies - Performio is a new breed of sales compensation software that combines the enterprise-grade functionality that you need with the ease of use you’ve come to expect from modern software applications.
What’s the opportunity?
As Staff Engineer, you will play a leading role in turning our product vision into reality, while working with other senior Product Engineering staff to design and develop our systems.
You’ll join an enthusiastic and experienced Product Engineering team in our Bangalore office, with plenty of flexibility to work from home as required. When you join our team, you’ll be the development lead for India, which currently consists of one team with expectations to expand.
This isn’t your average Lead Engineer role; expect to be heavily involved in product discovery as the Engineering voice alongside your peers in Product and Design. You’ll be engaged in forward planning while also coaching and pairing with your team to execute on product requirements. You’ll also take a seat on our Technology Council to establish contemporary systems architectures that are highly scalable, durable, and based on current best practices.
Our product is written mainly in Java, Spring and ReactJS, and runs on AWS across multiple regions. We use tools like GitHub, Docker and Buildkite and deploy our systems and monitor our technology using CloudWatch, OpsGenie and Open Telemetry while embracing AI tooling to deliver with efficiency. We’re looking for someone to help us evolve how our systems hang together while we grow our team and capability.
What will U be doing?
Creating change in a complex system. The technical lead for a team, making well-considered decisions around patterns, principals, frameworks, languages and tools, thinking through and mitigating for potential cascading impacts of those changes.
Acting as a trusted advisor. Partner with PMs, engineers and customer-facing teams to negotiate appropriate product architectures with consideration for user needs, business goals and technology constraints.
Designing and developing well-architected systems. Understand and contribute to our product source code and cloud infrastructure.
Designing holistically, delivering iteratively. Break down system-wide architecture recommendations into small, intelligently planned increments for delivery.
Advocate for technology needs. Translate technology risk into opportunity during product and technology roadmap discussions and advise on the required
areas of focus.
Coach and mentor. Thoughtfully lead the team around you and assist with career development of less experienced staff on our teams.
What we’re looking for
- Demonstrated experience as a lead or staff engineer, with at least 10 years experience in technology roles
- Experience working on technical leadership teams involved in roadmap planning, hiring and staff capacity planning
- You’re opinionated on what “great code” looks like and you’re passionate about code quality
- Experience working on complex systems and cloud architectures
- Excellent understanding of the Java programming language, frameworks such as Spring & SpringBoot and frontend technologies like React.
- Excellent understanding of data structures and database design
- Excellent knowledge of AWS services, design patterns and practices
- Highly effective at communicating, and comfortable whiteboarding architecture ideas with teams of engineers, product managers, and business analysts
- Desire to challenge the status quo and maturity to know when to compromise
- Respect for and ability to collaborate and influence team members from all disciplines and at all levels throughout the business
Requirements:
- Proficient in fundamental Software Design Principles, Data Structures, Algorithms, Problem Solving and Complexity Analysis.
- Proficient in programming languages like Python/Java/Javascript/Golang or similar.
- Strong understanding of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
- Hands-on Experience with SQL/NoSQL databases such as Postgres, Mysql, MongoDB.
- Hands-on experience with GIT, CI/CD, REST APIs and Cloud ( AWS/ GCP/ Azure) will be preferred.
- Understanding of Microservice Architecture and System Design Principles is a plus.
- Self-driven, detail-oriented and Strong sense of ownership, urgency, and ability to deliver great work.
- Demonstrated expertise in developing, releasing and maintaining large scale software applications.
The ideal candidate will be familiar with the full software design life cycle. They should have experience in designing, coding, testing and consistently managing applications They should be comfortable coding in a number of languages and have an ability to test code in order to maintain high-quality code.
Responsibilities
- Design, code, test and manage various applications
- Collaborate with engineering team and product team to establish best products
- Follow outlined standards of quality related to code and systems
- Develop automated tests and conduct performance tuning
Qualifications
- Bachelor of Science in Information Technology
- 1+ years of experience working with .NET, Asp.net or relevant experiences
- Experience developing web-based applications in Asp.net, Dot net Core, jQuery, HTML5, Rest base API integration
- Understanding DB,PL/SQL, Webform
- Experience working in agile development environment
Working in highly collaborative teams and building quality code
Working in lots of different domains and client environments also understanding the business domain deeply
Architect highly scalable, highly available, reliable, secure and fault-tolerant systems with minimal guidance
Suggest new architectural elements to improve the existing architecture
Design and implement low latency RESTful services; Define API contracts between services; Version APIs and make them backward compatible
Translate business requirements into scalable and extensible design
Create platforms, reusable libraries and utilities wherever applicable
Continuously refactor applications to ensure high-quality design
Choose the right technology stack for the product systems/subsystems
Write high-quality code that are modular, functional and testable; Establish the best coding practices
Formally mentor junior engineers on design, coding and troubleshooting
Plan projects using agile methodologies and ensure timely delivery
Troubleshoot issues effectively in a distributed architecture
Communicate, collaborate and work effectively in a global environment
Operationalize releases by partnering with Tech operations on capacity planning and operability of the product.
Skills Required:
Proficient in JVM based language(like Java, Groovy), J2EE technology stack
Expertise in API design and development, experience in dealing with a large dataset
Strong in collections, algorithms, multithreading, also have worked on Springboot, Hibernate frameworks.
Practicing the coding standards (clean code, design patterns, etc)
Very strong object-oriented design skills, awareness of design patterns and architectural patterns
Performance tuning and Troubleshooting memory issues, GC tuning, resource leaks, etc.
Strong problem-solving skills, algorithmic skills and data structures
Experience in agile methodologies like Scrum
Good understanding of branching, build, deployment, continuous integration methodologies
Experience in leading a team (min 5)and mentoring engineers
Attitude to getting Stuff Done!
Ability to make decisions independently.
Good to have:
Hadoop knowledge
Cloud Platform Architecture
Groovy
Responsibility of / Expectations from the Role:
- Document all technical requirements and design technical solutions utilizing enterprise architecture standards including documenting all solution components and configurations
- Contribute to all phases of the development lifecycle.
- Write well-designed, testable, efficient code.
- Ensure designs follow specifications.
- Ability to work independently.
- Persistent problem solver but know when to ask for help.
- Open-minded, transparent and able to learn and adapt.
- Good communication skills – both written and verbal.
- Teamwork skills with a problem-solving attitude.
● Be responsible for programming and software development using various programming languages and related tools and frameworks, reviewing code written by other programmers, requirement gathering, bug fixing, testing, documenting and implementation.
● Good understanding of GoLang and microservices
● To take up development and deployment of native code to manage the customer facing platforms
● Explain complex technical issues to project managers, developers, application leads and architects in an easy to understand manner, and recommend clearly thought out solutions.
● Knowledge of Integration Design patterns for building middleware systems from the ground up
● Knowledge of Web Services Interoperability, standards and ability to suggest, criticize and formulate solutions in a multi-vendor and architecture discussions.
● Develop solutions by designing system specifications, standards and programming
● Troubleshoot issues and provide bug fixes.

- Strong experience in Java Development
- Deep expertise and hands-on experience with Web Applications
- Expertise in Java, Spring Boot is an added advantage.
- Experience in Microservices
- Hands-on design experience with Web Services (REST, SOAP, etc ..).
- Strong grasp of security principles.
Nice to Have
- Spring Zuul
- Kafka
- cryptography and certificates
Abilities:
- Developer with strong ability to develop web applications using Java
- Should be able to Code, design, and implement
- Maintain code integrity and organization
- Web development using PHP & experience in coding on MVC architecture of Laravel
- REST API knowledge is a must with oAuth security
- Understanding of mobile apps with REST API integration, firebase & google analytics is important
- Need to have knowledge of querying MySQL & NoSQL databases like MongoDB
- Experience with Node Js for our notification system
- Understanding of cloud services like Google cloud & AWS ec2 instance is a bonus for the profile






