Roles & Responsibility: • Design and build advanced applications for Web/Mobile • Architecting and scaling engineering platform to reduce technical debts and improve performance and agility. • Working experience with Web services SOAP, Rest, XSD/XML • Unit-test code for robustness, including edge cases, usability, and general reliability • Improving application performance, optimization for loading times • Continuously discover, evaluate, and implement new technologies to maximize development efficiency • Good understanding in handling of Transactions in J2EE applications • Well versed with Code Review Techniques • Applying Coding Standards within the project • Helping out junior team members What we are looking for: • Proficient in Problem Solving, Data Structures and Algorithms • Familiarity with design concepts and constraints on different platforms • Passion & Deep understanding of GoF design patterns • A fanatic about writing ‘beautiful’ and ‘scalable’ code • Must have experienced scale in building web applications and SOA (micro services) based large scale setups • Experience with modern web UI frameworks (e.g. React, Angular) • Experience with web paradigms such as REST, Responsive Web Design, Test-driven Development (TDD), Dependency Injection etc. • Experience with architecting systems for AWS is a plus • Inquisitive and curious about product design and functionality
Good command of written and oral English is a must. Apply by attaching your resume Responsibilities: - Should have the working knowledge of AWS Sagemaker and AWSLambda. - Should have experience with Restful APIs, JSON, XML, and Android. -Comfortable in Python and Application deployment over the cloud. - Design overall architecture of software tools. - Collaborate with the rest of the engineering team to design and launch new features. - Maintain code integrity and organization with test-driven development and continuous integration.
WHY SHUTTL? Shuttl makes it possible for thousands of daily commuters to travel with dignity. We are solving a huge infrastructural gap in our mass transport system with a lot of success. Our services are available to both the end consumer as well as businesses across many cities in India. Our company culture reflects the responsible, liberal and creative mindset of our team. We believe that technology is and will be a key differentiator and we are excited to apply and create technology to solve problems in the mass transportation space. Our engineering team is composed of three groups - consumer, business and platform. The consumer group builds solutions that allow people to use Shuttl. The business group builds solutions that service transportation and fleet management needs for businesses. Finally, the platform group is responsible for building the platform that is leveraged by the consumer and business groups. WHAT WILL I DO? You will work as a Site Reliability Engineer responsible for the availability, performance, monitoring, and incident response, among other things, of the platforms and services used and owned by Shuttl. The SRE Team works alongside the Engineering team and owns every aspect of service availability as well as disaster recovery and business continuity plans. You will work with other Site Reliability Engineers and report to the Lead of Site Reliability Engineering Team. HOW DO WE WORK? Our engineering process is a five step process which consists of phases for planning, developing, testing & profiling, releasing and monitoring. The planning phase consists of documenting of the feature/task to be done followed by various discussions. These discussions cover product, delivery estimates, release plan, monitoring plan, test plans, architecture, code design, technology choices and best practice adoption. The development and testing phase coexist and involve writing code, unit tests, performance tests, profiling, stress testing, code reviews and QA testing. This phase is punctuated with daily scrums and standups. The release phase is largely about managing and communicating the release to customers and internal stakeholders and activating features. The last phase is the monitoring phase where relevant metrics and exceptions are tracked and any critical refinement for the delivered feature is undertaken. This phase culminates with a retrospective. SREs get involved in this process as early as possible to provide general guidance, recommendations and help with designing the application to be in compliance with community standards such as CNCF and 12 Factor. SRE involvement and influence tends to increase during mid to final stages of development where the application is primed for beta evaluation and all the tooling and instrumentation is finalized. WHAT SKILLS SHOULD I HAVE? For this role we expect you to have 3-5 years of experience working as a DevOps Engineer or SRE. You should have a good grasp of Unix like systems, access control, networking nuances, process isolation by the means of kernel provided features, distributed applications and algorithms, job schedulers and secret management among other things. At Shuttl we are a big proponent of Immutable infrastructure. All our infrastructure is hosted with Amazon Web Services and we use Hashicorp's Terraform to manage the infrastructure as code. A good handle on AWS and Terraform is therefore a definitive plus. Since SREs are expected to write a lot of code, you are also expected to be skilful in a programming language, preferably Python or Go.