Responsibilities
- Working with Housing gives you the experience of working in a true microservice environment. Exposes you to various nuances and complexities that come into play because of the system not being a monolith. We have 50+ microservices and discussions around things like circuit breaker patterns, bulkheading, etc. are part of our day-to-day conversation.
- As the combined entity, we are the biggest real estate player in the country in terms of footfall. What it translates to is the fact that 400M+ daily HTTP calls get served through our internal service mesh. So that is the scale you will be dealing with.
- You will get a chance to own services end-to-end. This would mean taking total ownership of the code, deployment, and execution in all environments. You will get all the opportunity and freedom to define and establish processes to ensure the health, robustness, and performance of the code and service that you own.
- You will get the responsibility of building things end-to-end. You will break down business requirements into tasks, provide accurate estimates, and then oversee the execution of the entire work. You will be directly interacting with the business owners and other relevant stakeholders.
- Complex tech challenges form the core of what we do day in and day out. You will deal with a lot of problems related to caching, index and query optimizations, rightsizing in terms of cache size or infra requirements, etc.
- While working on different business problems, you will witness polyglot in action and will get to show your mettle in the diverse set of technologies that are there in use.
- While most services are going to be there in Spring and RoR, you will get the opportunity to work in Django, Express, and Golang. You will also find Apache Spark in action.
- You will get a chance to work on technologies that are generally regarded as best in class and most cutting edge in the industry. For example, you will use Postgres and MySQL for RDBMS, mongo for NoSQL, Elasticsearch for index store, Aerospike and Redis for cache store, Neo4j for a graph database, and RabbitMQ and Kafka for async communication. Redshift as columnar storage and more. As if the list isn't enough, you will get the opportunity to work on serverless technologies like lambda, etc.
- Some of you will also get the opportunity to hire, mentor, and coach junior team members.
Requirements
- Graduation/post-graduation degree in Computer Science (IITs, IIITs, and NITs preferred) with 2.5-5 years of strong experience in JAVA and experience on frameworks like Struts/Spring/Hibernate (strong OO skills preferred).
- Hands-on experience in writing APIs with a good understanding of MVC architecture.
- Solid experience with REST and API design.
- Sound knowledge of one RDBMS system. Understanding of transactions, query optimization techniques, indexes, etc. is required.
- A solid foundation in computer science, with sound knowledge of data structures, algorithms, and software design.
- Enthusiasm for finding a solution for intricate and interesting problem statements.
- Experience with search techniques and a solid foundation in search engines- Solr, Elasticsearch, or others (desirable). Experience in NoSQL datastores like Redis, MongoDB, CouchDB, etc., with an understanding of underlying sharing and scaling techniques (desirable).
- Experience in building highly scalable business applications, which involve implementing large, intricate business flows and dealing with a huge amount of data.
- Experience with cloud-based development (AWS), microservices architecture, Docker, etc. (desirable).
This job was posted by Vikas Dubey from Housing.