StackAvenue is an innovative Software Company who builds and manages awesome software for many organisations including ourselves and in various technologies to serve the needs of multiple industries.We specialise in:
- Software Architecture and Design.
- Development and Testing.
- Deployments and Operations.
Roles & Responsibilities :
We are looking for Senior Software Developer (Elixir/ROR) who have past experience in Elixir or Erlang.
- Design and write with the cutting edge Elixir/ ROR language to improve the availability, scalability, latency, and efficiency of the company's range of products.
- Work with the engineering team to explore and create new design/architectures geared towards scale and performance.
- Participate in code and design reviews to maintain our high development standards.
- Engage in service capacity and demand planning, software performance analysis, tuning and optimization.
- Collaborate with product and experience teams to define and prototype feature specifications.
- Work closely with the infrastructure team in building and scaling back-end services as well as performing root cause analysis investigations.
- Design, build, analyze and fix large-scale distributed systems.
Qualifications :
We are looking for developers with 5+ years of experience of which 1-2 yrs of past work experience with ROR / Elixir or Erlang. In terms of Elixir we expect the following:
- You should be aware of idiomatic programming in Elixir, and should have good awareness of concepts such as pattern matching, recursion, and behaviors.
- You should be well versed with concurrency and processes in Elixir.
- You should be hands on with Genservers, Tasks, Agents, Supervisors, and other OTP concepts in Elixir.
- Plus points if you have worked with data processing libraries such as Genstage, Flow and Broadway.
- 5+ years of overall software engineering experience.
- You should have good experience working with relational and non-relational databases. We use Postgres and Cassandra.
- Good to have but not mandatory working experience with caching tools such as Redis, Queue mechanism setup with RabbitMQ.
- Good knowledge of version management with Git.
- Awareness of TDD.
- CI/CD knowledge would be a huge advantage.
- Will to design and maintain large scale distributed systems.
- Past experience in building complex applications, either by yourself, or as part of a larger team
- Desire (obsessive?) for maintainability.
- Experience of working with cross-functional remote teams in an Agile software development framework.
- Experience in designing APIs with proper documentation.
- Ability to write useful and maintainable tests.
- Good understanding of the common architectural patterns and design principles.
- Solid understanding of how modern web applications work.
- (Nice to have) Being an active member of the Elixir community (writing blog posts, giving presentations in meetups, etc).
- Strong written and verbal communications skills in English to engage a variety of large audiences, internally and externally.
- Strong analytical and reasoning skills.
- Bachelor’s Degree or equivalent in any relevant discipline.
Similar jobs
We are looking to hire a talented ruby on rails developer to manage the interchange of data between our users and the server. You will be responsible for developing and maintaining the server-side logic for the central database, testing performance, troubleshooting, and integrating front-end elements into the application.
To ensure success as a ruby on rails developer, you should have extensive experience working with ruby and back-end integration techniques. Ultimately, a top-level ruby on rails developer can create clean, functional code that perfectly suits the needs of the company.
Responsibilities:
- Develop backend systems for our first product
- Build reliable, secure and performant backend systems
- Drive test coverage and continuous delivery automation within the team
- Mentor and provide feedback to teammates
Requirements:
- 5+ years of software development experience
- Strong computer science fundamentals
- Deep and wide knowledge of Java ecosystem
- Can write code that is readable, maintainable, secure and performant
- Know the importance of tests and how to approach writing different types of tests
- Good intuition for REST API design
- Deep understanding of relational databases, transactions, entity-relationship modeling
- Comfortable writing highly concurrent systems
- Experienced in using profilers, tuning garbage collection, optimizing SQL queries
Bonus:
- Understanding of domain-driven design concepts like ubiquitous language, bounded contexts, aggregates and domain events
- Know how to use test driven development as a design tool
- Good intuition for the principles underlying object-orientation, particularly encapsulation
- Understand the importance of immutability and of reducing the state-space of objects
- Know how to refactor large codebases safely
- Seek to identify key underlying ideas and use those as building blocks before reaching for shiny new tools
From the very beginning, Ally has believed that the right people united by the right mission can redefine the possible
Ally is a B2B SaaS startup. We enable teams to focus, align and achieve goals, with strong employee engagement. Our OKR solution is ridiculously easy to use and scalable to startups and larger teams.
We believe in being where the work happens. Ally is well integrated with the tools and products that we already use in our daily workflows. Further, you can access it from the web and mobile. Ally’s Insights identifies problems and helps the team make the necessary changes to achieve the goals on time.
We are looking for a Lead Software Engineer to join our Ally Engineering Team in Chennai, India.
What does a lead software engineer do at Ally?
As a lead software engineer, you will be the technical lead for a team that focuses on building software applications that scale well. You will play a significant role in shaping our software architecture that provides measurable customer value. You understand both technology and business to know the right tradeoffs to make. You will be a technical mentor for your team members. You will work closely with your peers, managers, product, design and operations teams to create solutions that meet business requirements. You will drive engineering and operational excellence across Ally. You will collaborate with other engineers to surface common pain points, develop solutions and evangelize best practices.
Qualifications
- 7+ years of professional software engineering experience building customer-facing web and/or mobile applications
- Strong coding skills using Ruby, Java, C/C++, Scala (or equivalent programming language)
- Excellent knowledge of Data Structures and Algorithms
- Bachelor or Master degree in Computer Science or a related discipline
- Experience working in an agile environment
- Self-starter, quick learner and passionate problem resolver
- Excellent debugging and troubleshooting skills, with an enthusiastic attitude to support and resolve customer problems
- Good oral and written communication skills
- Above all, an insatiable desire and ability to learn
Nice to have skills:
- Experience with large-scale SaaS applications
- Experience building web and mobile applications
- Experience designing services on top of cloud infrastructure like AWS, Azure, etc
- Knowledge of Ruby on Rails
- Prior experience as a technical lead
Additional Information
Benefits
- Ownership and autonomy to drive customer and culture initiatives
- Centrally located in the city; right next to Metro station
- Opportunity to get mentored and mentor junior engineers
- Competitive salaries
- Paid time off
- Medical insurance