

- Identify bad code practices in Ruby and write new analyzers to detect them.
- Improve the coverage of automatically fixable issues.
- Ensure fewer false-positives are reported by the analyzer.
- Work on the internal tools that support analysis runtimes.
- Contribute to open-source static analysis tools.
We’re looking for someone who has:
- Strong foundational knowledge in Computer Science.
- At least 3 years of professional software development experience in Ruby.
- Understanding of the nuances of execution of the source code (AST, data flow graphs, etc).
- Familiarity with Ruby best practices followed in the industry.
- Native experience with Linux/Unix environment.
- A focus on delivering high-quality code through strong testing practices.

Similar jobs



You have 3 to 14 yrs of software engineering & product delivery experience with strong
background in datastructures & algorithms
• You’ve proven software development credentials having successfully built complex
products
• You are experienced with one or more general programming languages (e.g. Java, C/C++,
Go). Ability to learn other coding languages as needed.
• You’ve proven software development credentials having successfully built complex
products
• You have a strong foundation in the fundamentals of computer science, with familiarity in
data structures, algorithms and a strong command of object-oriented principles.
• You have experience in one or more of the following areas: Server Backend, Distributed
and Parallel Systems, Full Stack Development (frontend and backend), Scalable Enterprise
Platforms and Applications, Application Security and Incident Management, Android,
iOS, and Machine Learning.
• You have a spark that separates you from the crowd and ability to think out of the box and
on your feet
• You possess multi-dimensional skills that make you a valuable co-worker in a fast,
changing and ambiguous environment
• You have the ability to learn other coding languages as needed real quick
• You are comfortable in working with a team that deals with ambiguity every day

ROR
1-2 years of experience working with Ruby on rails as well as libraries like Resque and RSpec.
Good experience with Redis, Sidekiq, and Docker.
Ability to write clean ruby code.
Proficiency with code versioning tools including Git, Github, Gitlab, and SVN.
Experience with AngularJS or React JS is a plus.
Familiarity with MVC, Mocking, RESTful, and ORM.
Good understanding of front-end technologies including HTML5, JavaScript, Jquery, and CSS3.
Knowledge of server-side templating languages including Slim, Haml, and ERB.
Familiarity with tools like Jira, Postman, Slack, and Microsoft Teams.

• Integration and development of various microservices
• Creating unit tests using RSpec
• Reviewing other developers code as well as suggesting improvements
• Algorithm development and general optimization
• Setting up CI/CD pipelines
• Collaborating with various stakeholders including QA, DevOps, PMs and other
developers
• At Least 4 years solid experience on Ruby on Rails, including at least one start to
finish project where you were the lead developer or a primary contributor.
• Solid understanding of deploying and maintaining Rails apps within the AWS
environment.
• Ability to set up workers and deploy across multiple instances.
• Git experience, some would say you are a git master.
• If I asked your previous co-workers about you, they would say you were a good
team player
6 Months Deliverable:
• Collaborate with designers, product managers, and other software developers to
deliver compelling user-facing products
• Lead teams of developers in architecting efficient and reusable systems that drive
complex applications across the stack
• Create instrumentation, monitoring, and alerting tools to ensure
availability/scalability during peak traffic times and implement solutions to
maximize uptime
• Identify and resolve performance and scalability issues
Requirements
• A strong drive and sense of ownership of the challenges we take on, coupled with a
team-oriented, can-do attitude
• Working knowledge of standard CS fundamentals (data structures, algorithms,
complexity analysis)
• A professional proficiency in English
• A systematic debugging and problem solving methodology
• Minimum of four years of experience with Rails 4/5
Benefits
• Health and wellness benefits
• Performance-based bonuses and stock options
• Employee friendly policies
• Generous vacation and time off benefits, including paid holidays
• Generally flexible working hours

We are looking for an enthusiastic developer with a strong understanding of core Ruby
and Rails framework along with PostgreSQL database. Someone who is passionate
about coding and loves to work in an ongoing challenging environment. You will be part
of a talented software team. You have to consistently deliver in a fast paced
environment and should be more than willing to build software that people love to use.
Key Responsibilities
The individual role that you’ll play in our team:
● Developing large multi-tenant applications in Rails.
● Understanding Rails best practices and religiously introducing those to our
codebase.
● Knowledge on how to do effective Refactoring.
● Ability to write unit tests and following those practices religiously.
● Working closely with the Product managers and UX team.
● Helping QAs to write automated integration tests.
● Staying up-to-date with current and future Backend technologies and
architectures.
Read the ‘Skills and Experience’ section, it is not the usual yada yada, you’ll be
asked specific questions on these.
Skills and Experience
● Ruby on Rails architecture best practices
● Knowledge on the latest versions on ROR
● Strong OOP knowledge in Ruby.
● Asynchronous Networking in Ruby
● Designing RESTFul HTTP APIs using JSON-Schema or JSON API (jsonapi.org).
● Ability to architect and develop API only backend
● Experience in using ActiveRecordSerializer
● Understanding O-Auth2 or JWT (Json Web Token) authentication mechanisms.
● How to use RSpec
● Rails Security Best Practices
● PostgreSQL and Rails.
● SQL concepts like Joins, Relationships etc.
● Understanding DB Partition strategies.
● Knowledge about refactoring ActiveRecord Models (read this - “7 Patterns to
Refactor Fat ActiveRecord Models”).
● Understanding scaling strategies for a high-traffic Rails applications (2 million+
requests a day).
● Background Job processing using Redis and Sidekiq
● Experience in using Amazon Web Services (AWS) tools.
● Writing automated Deployment Scripts using Capistrano, Ansible etc.
● Sending emails in Rails
● Knowledge in Linux and Git is mandatory
Optional Skills
● Knowledge in using Chef or Puppet
● Ability to do basic DevOps like setting up a Linux server.
● Websocket communication in Rails 5.
● Node.js
● JRuby




What do Microsoft, The Gap, Royal Bank of Scotland, Lockheed Martin, and top Open Source projects like JQuery have in common? They all use BrowserStack, as do over 25,000 other customers!
BrowserStack is the industry-leading, cloud web and mobile testing platform that enables developers to test their websites and apps on different operating systems and mobile devices. Since launching in 2011, our mission has been bold yet simple: To be the testing infrastructure for the internet. 6 years and billions of tests later, we are ready for our next phase of hyper growth. Bootstrapped for the first 6 years, we continue to be profitable since inception with a near exponential https://workable.com/nr?l=https%3A%2F%2Fwww.browserstack.com%2Fgrowth">growth in customers around the globe. Recently, we closed $50M in Series A funding from Accel
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
- Writing high quality code, participating in code reviews, designing/architecting systems of varying complexity and scope, and creating high quality documentation supporting the design/coding tasks
- Lead out team meetings, stand-ups, and architecture/design discussions
- Identify areas of improvement in our frameworks, tools, processes and strive to make them better. Evaluate our success metrics and evolve our reporting systems
- 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 Source
- Teaching 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 24x7
- Scale distributed applications, make architectural trade-offs applying synchronous and asynchronous design patterns, write code, and deliver with speediness and quality
- 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 similar
- Good 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 skills
- Startup mentality, high willingness to learn, and hardworking
- Experience of 3-6 years






