Fulfill the critical role of ensuring that our complex, large-scale systems are healthy, monitored, automated, and designed to scale. We work closely with our development teams from the early stages of design, all the way through identifying and resolving production issues. RESPONSIBILITIES Primary point responsible for the overall health, performance, and capacity of one or more of our Internet-facing services Provide guidance and mentorship to engineers in your and other teams Challenge the team to high standards of technical excellence - strive for ever better automation and engineering tooling Build standard engineering practises of auto-scale, CI/CD, release engineering, HA in all engineering components Co-ordinate with external datacenters and AWS in the event of provisioning, outages or maintenance Acquainted with Rails and deployment tools like Capistrano Assist in the rollout and deployment of new product features and installations, to facilitate rapid iteration and constant growth Be aware of current CVEs, potential attack vectors, and vulnerabilities, and apply patches as soon as possible Handle incident responses, troubleshooting and fixes for various products/services. Work closely with development teams to ensure that platforms are designed with scale, operability, and performance in mind Participate in a 24x7 rotation for production issue escalations Evaluate and learn new technologies SKILLS Good understanding of Unix/Linux Systems 4 to 9 years of relevant experience Bash/Perl/Ruby/Python Basic DNS & Networking, TCP/UDP, IP Routing Good understanding of OpenSSL, HTTP, Nginx, Ansible, Nagios Bring great systems know-how to the team Exhibit a sense of urgency to resolve issues.
BrowserStack BrowserStack is the industry-leading, cloud web and mobile testing platform that enables developers to test their websites across various browsers on different operating systems and mobile devices. Over 2 million developers across 135 countries rely on BrowserStack for faster and more reliable testing infrastructure for the internet. The company has over 25,000 paying customers, from startups to large enterprises, including Microsoft, Amazon, Twitter, Airbnb, Mastercard, Barclays, Gap, and Levi Strauss. BrowserStack was founded by Ritesh Arora and Nakul Aggarwal in 2011 and is entirely bootstrapped. It has been profitable since its first month of operations while experiencing near exponential growth. Role Key Responsibilities Work with an Automation team to improve an existing set of tool, framework, and automation test to support ongoing releases Write unit tests and automated integration/acceptance tests Create/Review test plans and test cases for new products or features Work closely with software engineers/developers and provide design/code review feedback Integrate with product development teams in BrowserStack to support them with writing code/tests and promote best practices Champion test driven development promote other test engineering related best practices Evaluate and learn new technologies Provide guidance and mentorship to software/test engineers Challenge the team to high standards of technical excellence - strive for ever better automation Key Skills BS and/or MS in Computer Science or a related field Strong organizational and problem solving skills with great attention to detail, critical thinking, debugging, solid communication, with the ability to track multiple test executions simultaneously and report results 6+ years of software development and testing experience Experience in Automation for UI and Mobile application (Selenium and Appium) Experience working with, customizing, and extending test automation frameworks Strong coding skills, proficient in at least one object-oriented programming or scripting language (e.g. Java, Python, Ruby) Excellent in Computer Science fundamentals in object-oriented design, data structures, algorithms for common software problems, complexity analysis and aptitude for problem solving Experience in testing mobile apps in iOS, Android OS Exposure to Performance or any other Non-Functional testing Talent and expertise in white box testing Knowledge of test methodology and tools, software testing standards, methods and conventions, build systems, and the product development cycle Experience with one or more continuous integration tools (e.g. Jenkins), version control systems (e.g. Git) Shows creativity and initiative to improve product test coverage and effectiveness Willingness and flexibility to switch between multiple high priority assignments
Are you are the one who wants to work on a tech-heavy product, and the challenging technical problems that it entails? Problems vary, and can be as diverse as scaling the product smoothly as the company grows, to setting up a device farm, or solving streaming issues through a browser, without the use of plugins. Will you be excited for the challenge to transform and think critically on many computer science disciplines including product design, usability, building APIs and user-centric online applications, business logic, scaling performance, and 24x7 reliability? Job Responsibilities Works on the web application layer, backend, systems, streaming and other associated technology to build our product and components Find solutions and solve issues around a variety of operating systems or programming languages Researching new technologies and adapt them to BrowserStack requirements Own and commit to all your work, and be accountable for your results Using and understanding code from Open SourceTeaching others how to use new software Willing to learn new programming languages and databases Able to write efficient SQL queries and design schemas for relational databases Participate in a culture of code reviews, writing tech specs, and collaborating closely with other people (no lone wolves) Produce high quality software that is unit tested, code reviewed, and checked in regularly for continuous integration Develop multi-tier scalable, high-volume performing, and reliable user-centric applications that operate 24x7Scale distributed applications, make architectural trade-offs applying synchronous and asynchronous design patterns, write code, and deliver with speediness and quality Job Requirements Good experience in at least one scripting language: Ruby, Nodejs, Python, AppleScript, Unix shell or similar Familiarity with one compiled language: C, Java, Go or similarGood knowledge of operating systems and networking concepts Reasonable knowledge of Windows and/or Linux operating systems Ability to work on Windows and Linux platform below the application layer, including file systems, kernels, custom installations, shell scripting, internal APIs, etc Aggressive problem diagnosis and creative problem solving skillsStartup mentality, high willingness to learn, and hardworkingExperience of 2+ years