The Team and Your Role
You will be a part of the Enterprise Engineering team, which is responsible for design and development of foundational software utilized by applications throughout AQR, including:
§ Enterprise Cloud Platform
§ Enterprise Messaging Fabric
§ Common Data Access Framework
§ Role Based Entitlements System
§ Application Monitoring and Alerting
§ Application Configuration Management
§ Business Notifications
These foundational services are part of a larger project that streamlines the entire SDLC from project inception through to production and post-production. We build and maintain common development tools and libraries that are implemented in Java, Python and Golang. The libraries provide business applications with core functionalities needed to build any application within our environment. In addition, we provide standardized cloud-based runtime platform with necessary tooling for all AQR applications.
What You Will Bring
§ Engineering degree in Computer Science or equivalent field from top schools
§ 3 to 5 years of software development experience with substantial individual contribution
§ Outstanding coding, debugging and analytical skills
§ Experience working with complex projects through the software development lifecycle
§ Experience working in a geographically spread out team
§ Hands on programming experience with mastery over at least one programming language in Java or Python
§ Strong knowledge of: Spring, Multithreading, Open Source dbase
§ Microservice architecture
§ RESTful application design
§ Experience designing and developing distributed systems
§ OOP design patterns (especially Java or Python) and data modeling
Our technology platform includes:
§ AWS
§ Kafka
§ Mesos
§ Docker
§ Redis
§ Spring Boot
§ Excellent communication skills both verbal and written
§ Demonstrated contributions to open-source software is also a plus
Similar jobs
Job Title - Senior Java Developer
Experience Required - 5 to 9 Years
Location - Bangalore (Work from Office)
Immediate joiners are preferred.
Job Description:
We are seeking a skilled Integration Developer with expertise in Apache Camel to design, develop, and implement scalable integration solutions. The ideal candidate will have a solid understanding of enterprise integration patterns, APIs, and cloud services.
Technical Expertise:
Strong hands-on experience with Apache Camel.
Proficiency in Java, Spring Framework, and Spring Boot.
In-depth knowledge of Enterprise Integration Patterns (EIPs).
Experience in building and consuming RESTful APIs and SOAP services.
Familiarity with message queues (e.g., ActiveMQ, RabbitMQ, Kafka).
Understanding of microservices architecture and cloud platforms (AWS, Azure, or GCP).
Roles and responsibilities:
Design and Develop Integration Solutions
Implement and manage enterprise integration patterns (EIPs)
API and Microservices Development
Collaboration and Requirement Analysis
Maintain Integration Pipelines
Documentation and Testing
Continuous Improvement
- Development of applications in Java including:
- Building data processing platforms.
- Developing micro-service-oriented applications.
- Interact with stakeholders of the applications being developed.
- Must have experience in Java JEE, Spring Framework, and Microservices
- Experience in SQL and JDBC
- Experience in build tools Maven, git
- Good to have experience in Cloud Platforms AWS, Azure is a plus
Responsibilities
- Software Engineering
- Design and develop highly scalable, available, reliable, secure and fault tolerant systems with minimal
guidance for a market leader in the logistics industry
- Partner with team members on functional and nonfunctional requirements and spread design
philosophy, goals and improve the code quality across the team
- Research new technologies and tools that enable building the next generation of our services
- Provide technology leadership to the team and foster engineering excellence
- Product Delivery
- Partner with product managers to define and execute on the feature roadmap
- Translate business requirements into scalable and extensible design
- Coordinate with various cross functional teams on planning and execution
- Maintaining automated build / test / deployment environments
Qualifications
- Software Engineering
- Should have at least 2 years of hands on experience in designing, developing, testing and deploying
applications on Java, Ruby, Kotlin, Python, Node or Go for large scale applications
- Deep knowledge of one of the programming language they have experience in
- Proficient in OOP and Design Patterns, experience with functional programming would be a plus
- Data modelling experience in Relational Databases
- Ability to design and implement low latency RESTful services
- Product Delivery
- Ability to scope, review and refine user stories for technical completeness and to alleviate dependency
risks.
- Well versed in working with agile methodologies which includes phases such as design, development,
code review, testing and release management
- Ability to have worked in a CI/CD environment, with hands on experience with Git or any similar source
code management tools
- Product Maintenance
- Experience troubleshooting server performance issues such as memory tuning, GC tuning, resource leaks
etc
- Continuously refactor applications to ensure high quality design.
Requirements:
- Energetic self-starter, with a desire to work in a startup environment.
- Proficient in advanced Java programming skills.
- Expert in Application development cloud/on premise end to end. Middle layer, DB layer.
- Nice to have understanding on MQ and DB
- Good hands on in Complex Event Processing systems.
- Solved scale and performance issues while dealing with huge sets of data. Pre compute or data aggregation frameworks to achieve good response time.
- Real world experience working with large datasets and NoSQL database technologies
- Experience of debugging applications running on Unix like systems (e.g. Ubuntu, CentOS)
- Experience developing RESTful APIs for complex data sets
- Knowledge of container based development & deployment (e.g. Dockers, rkt)
- Expertise in software security domain, a plus
Backend Developer
Qualification: B.Tech./MCA, BCA in Computer Science or equivalent
Experience: 3 - 6 Years
Skills Required:
- Must Have: Java, Spring/ springboot
- Any 2 (Must) out of the below mentioned list :
- JPA/Hibernate
- Messaging queue/Kafka/SQS/distributed message/SNS/JMS
- NOSQL/ Aerospike/ Reddis /Cassendra
- Microservices
Roles and Responsibilities:
- Technical design, implementation, deployment, and support.
- Partner with Business Analysts to review and implement business
requirements.
- Perform development and unit testing, working closely with Business.
- Mentors and oversees development of resources, including reviewing designs and performing code reviews.
- Ensure designs are in compliance with specifications
- Contribute in all phases of the development lifecycle
- Developing high - volume, low - latency applications for mission - critical systems and delivering high - availability and performance
- Should have experience of working on Core Java/J2EE & OOPS concept
- Should be well versed with Spring/Struts & Apache Came l (OSGI Framework)
- Should have a good understanding of Hibernate and Other ORMs
- Should have an understanding of working on Web Service (SOAP/REST) and Maven
- Build tool such as Jenkins
- Caching Technique(Radis, Hazlecast, Aerospike)
- Database Knowledge- Oracle, MySQL
Basic Qualifications:
- 2+ years of non-internship professional software development experience
- Programming experience with at least one modern language such as Java, C++, or C# including object-oriented design
- 1+ years of experience contributing to the architecture and design (architecture, design patterns, reliability and scaling) of new and current systems.
Additional Job requirements
- BS/MS/PhD in Computer Science/Math or equivalent
- BS in computer science or related field.
- 2+ years of relevant professional software development experience: designing, developing, and delivering software written in Java, C#, or C++, web development.
- Knowledgeable in object-oriented design patterns.
- Experience building highly scalable and distributed systems
Preferred Qualifications
- Experience with service-oriented architecture and application/services development
- Passion for performance debugging and benchmarking
- Ability to clearly and concisely communicate with technical and non-technical stakeholders across all levels of the organization
• Participation in the requirements analysis, design, development and testing of applications.
• The candidate is expected to write code himself/herself.
• The candidate is expected to write high level code, code review, unit testing and deployment.
• Practical application of design principles with a focus on the user experience, usability, template
designs, cross browser issues and client server concepts.
• Contributes to the development of project estimates, scheduling, and deliverables.
• Works closely with QA team to determine testing requirements to ensure full coverage and best
quality of product.
• There is also the opportunity to mentor and guide junior team members in excelling their jobs.
Job Specifications
• BE/B. Tech. Computer Science or MCA from a reputed University.
• 6+ Years of experience in software development, with emphasis on JAVA/J2EE Server side
programming.
• Hands on experience in Core Java, Multithreading, RMI, Socket programing, JDBC, NIO,
webservices and Design patterns.
• Should have Knowledge of distributed system, distributed caching, messaging frameworks, ESB
etc.
• Knowledge of Linux operating system and PostgreSQL/MySQL/MongoDB/Cassandra database is
essential.
• Additionally, knowledge of HBase, Hadoop and Hive are desirable.
• Familiarity with message queue systems and AMQP and Kafka is desirable.
• Should have experience as a participant in Agile methodologies.
• Should have excellent written and verbal communication skills and presentation skills.
• This is not a Fullstack requirement, we are purely looking out for Backend resources
• Architecture: Knowledge of data structures and an eye for architecture.
• Strong coding/debugging abilities: You have advanced knowledge of at least one
programming language, and are happy to learn more. Either Go or Java
• Distributed Systems: Experience building distributed systems at scale.
• Fast learner:
• A team player:
• Design and business acumen
Basic Qualifications
• 8 years of experience profeciency in Java or Go language and in handling large data systems
• Proficiency in Spark and related big data handling architectures• Proficiency in SQL