Developer
Who are we looking for?
A passionate developer who has a strong working knowledge of OOPS and functional programming principles. Standard Definitions and abbreviations don't entice us that much.
Key skills
· Strong Java and J2EE, programming background.
· Strong working experience in Multi-Threading, Exception Management and Use of Collections.
· Sound knowledge of working with application aspects i.e. Caching, Asynchronous APIs, Logging etc.
· Experience with web application frameworks like Spring Boot.
· Unit Testing is an everyday affair and hence demands very good unit testing skills using tools like Junit & TestNG.
· Understanding of relational databases, RESTful services and build tools like Maven & Gradle
· Knows what and when to mock and have used frameworks like Mockito/Power mock.
· Understanding of message queue such as ActiveMQ, Kafka, RabbitMQ.
· Knowledge of software best practices like Refactoring, Clean Code, Domain Driven Design, Encapsulation etc.
· Fundamental understanding of Design Patterns and Design Principles and decision making ability to use those appropriately.
· Must have an art to translate business requirement or product features into high level and low level design.
· Expert knowledge of Domain Modeling (UML) and ability to communicate it to developers and throughout organization
· Knowledge of SQL solutions and technologies, ‘cloud’ solution
· Exposure and understanding of Micro Services is mandatory.
· Version Control is treated as important as programming skills. Fluent with version control tools like Git and Bitbucket.
· Exposure to Agile/Scrum, TDD not in theory but in practice.
· Experience with Continuous Integration, Continuous Deployment, Static Code Analysis, Jenkins and SonarQube.
· Willingness to take ownership of technical solution and ensure technical expectations of deliverables are met.
· Strong communication skills along with the ability to articulate technical designs and concepts.
· Exposure to cloud and containerization would be a plus.
· Hands-on experience in application development in an enterprise setup.
· Have good Understanding of Distributed Application Architecture.
Developers at Tavisca:
· Believe in writing clean and maintainable code.
· Work with cutting edge technologies like Akka, Docker, Reactive Programming, Functional programming languages and NoSQL databases.
· Are key technical influence in software architecture decisions.
· Are responsible for technical design and entire lifecycle of product development.
· Guide, mentor teams and others.
· Are a part of an open office culture which fosters knowledge sharing sessions.
· Work in a collaborative team environment; engage in discussions and team-wide communication such as daily Standups, tech rally, and pair programming, refactoring, code review.
· Love participating as a speaker, contributing to open source projects, writing blogs or articles.
What you will get?
· Awesome opportunity to work with Micro Services architecture getting shipped on Cloud.
· Experience in working with automated build deploy powered by Code Analysis, Automated Tests, Functional and Nonfunctional analysis, Blue Green deployment and much more.
· Agile, Lean product development, Collaborative Development, TDD, BDD, SOLID, CI/CD would not be mere words but true experience for you.
· First-hand experience on broader enterprise application concerns like Message Bus, Queues, Caches, Concurrency and Parallelization.
· Be a part of our product development team.
· Lead a team to develop our next generation products from ground up.
· Develop your skills in cloud computing, truly scalable applications and travel domain.
· Be a part of our strategy in US and India market; bring large online travel business to life.
· Stay on leading edge of technology and excellence.
· Be part of an environment of excellent people, products, technology and innovation
· Be part of a flat organization which is open and rich in culture.
· Fall in love with travel, tea and football.