
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

Sr. Software Developer ( 4years – 5years)
Required:
- Extensive experience in Ruby on Rails (4-5)years, software designing and architecture.
- Experience in microservice architecture (2-3)years
- Experience in Elastic Search/Redis/Sidekiq
- Experience in writing Rspec Test cases
- Experience in cloud services such as AWS
- Experience in Postgres/Mysql, Database Modelling
- Excellent problem solving capabilities
Good To have:
- Experience in design pattern
- Experience in managing teams


Roles and Responsibilities
• Code, develop, design and architect features related to the existing application. We
expect you to own modules end to end and take pride in the work products you
ship.
• Lead from the front, when it comes to delivering high quality work products. Serve
as a mentor to the team members
• Create and define performance metrics. Ideate, innovate and hack through the
existing systems to improve performance.
• Perform code reviews, set coding practices and guidelines within the team.
• Make sense of the product specs, be nimble in getting the issues resolved. Be a
thought leader.
Critical Functional Skills:
• Solid understanding and knowledge of Java/C/C++. You should understand the
concepts of multithreading, I/O, messaging, instrumentation etc and their
implementation in Java/Any other Object-Oriented Language.
• Proficiency in the implementation of algorithms and the use of advanced data
structures to solve problems in computing. A solid foundation in the principles of
computer science is desired.
• Ability to write clean, modular, and loosely coupled code by the use of design
patterns.
• He/She should be able to break down and architect complex software systems. For
example- Build
• Cars Availability Engine for Ola.
• Strong decision-making ability
• Deep expertise in at least one programming language & tech stack.
• Substantial experience in building complex and scalable solutions.
• Strong object-oriented design skills, ability to apply design patterns, and an uncanny
ability to design intuitive module and class-level interfaces
• The ability to do deep problem solving and build elegant, maintainable solutions to
complex problems.
• Experience leading multi-engineer projects and mentoring junior engineers
• Experience with full life cycle development in any programming language on a Linux
platform
• Comprehensive operational experience including, optimizations, deployments and
tuning servers like apache/mysql/tomcat/solr
• Prior experience in working with Agile software methodologies (XP, Scrum), TDD,
and Continuous Integration(CI/CD) a plus.
• Experience in building data-driven web application design and development is a plus
• Expert level experience in building a scalable, large and complex business
application.
Experience Required:
• Typically with an experience of 5+ years of development experience in a product
firm.
• Must have lead, designed, architected and delivered at least 1 project in his previous
assignments independently.
Minimum Qualifications Required:
• Btech/MS from a reputed Institute
• Deep expertise with any or combination programming languages: Java, C++, C#,
Ruby, Scala,
• Go any object-oriented high-level proprietary or open-source language with strong
programming constructs. We are not skill-specific but go by strength in
competencies
• Machine coding
• Single machine in-memory program
• Need a working code with functionality
• Readable and well-designed code with right abstractions, separation of concerns,
• right design patterns
• Performant code with concurrency and efficient data structures
• Write test cases covering the happy path and edge cases
• Problem Solving
• Choose the right combination of data structures to solve the problem
• Identify most edge cases for the problem
• Identify opportunities of parallelism: utilizes multi-core solutions where applicable
• Design & Architecture
• Distributed systems design and system interaction
• Identify API signatures
• LLD with class design
• Solve for performance & availability

Key responsibilities for this role include:
• Lead one of the product verticals in the development of technology strategy, planning, hiring and execution of the next iteration of the WeInvest platform.
• Institutionalize a strong software engineering culture and facilitate a rapid, iterative, layered development approach.
• Be hands on with the coding, evaluate design and architecture choices, do in-depth code reviews, and implement standards and practices for software development.
• Inspire the engineering team to build quality, scalable code by pairing with team members periodically.
• Participate in the definition and management of high-quality product roadmaps based on business, product & tech strategy.
• Proactively identify and resolve strategic issues that may impair the team’s ability to meet strategic, financial, and technical goals.
The ideal candidate will have:
• Masters /BE/ B.Tech from a reputed institute
• About 6-10 years professional experience in software development.
• Excellent logical and analytical reasoning capabilities combined with strong knowledge of core
computer science concepts like algorithms, data structures, software design patterns, OOP etc.
• Should have experience in all the phases of SDLC
• Must have experience in leading a team. (At least 2-3 people)
• Be an expert in ruby on rails with experience OR from Fintech, Wealth Management OR Investment
• Management Domain with experience in any of the programming languages (Java/Python/Ruby).
• Breadth of experience in multiple technologies, tools, frameworks and processes is a big plus.
• Excellent understanding of core computer science concepts like algorithms, data structure,
Software design patterns, OOP etc. Be able to lead the team in design & architecture discussions,
introduce new tools, concepts & process to the team and guide other members of the team.
• Experience working in an agile team with software engineering practices like automated testing,
test- driven-development, continuous integration etc is a big plus.
• Excellent oral and written communication.


Design robust, scalable, and secure features.
Contribute to all phases of the development lifecycle.
Sincere to work and can take ownership.
Requirements
Proven work experience as a Ruby on Rails developer.
Proven work experience in software development.
Demonstrable knowledge of front-end technologies such as JavaScript, HTML, CSS and JQuery.
Experience developing highly interactive applications.
A firm grasp of object-oriented analysis and design.
Passion for writing great, simple, clean, efficient code.
Good knowledge of relational databases.
Working knowledge of NoSQL databases.
Good communication (English) and a problem-solving attitude.
Bachelor degree in Computer Science, Engineering or in an equivalent field.


Job Location: Bangalore
Experience : 3 – 8 Yrs
Qualification : IITs/NITs/IIITs/BITS, pliani, Tier1/II Engineering Colleges
Skills Required :
• Mandatory – Educational Background should be from Tier1/II institutes only.
• A bachelor’s degree in Computer Science or equivalent combination of Technical education and work experience.
• Strong Object Oriented Design and skills (C/C++ and/or Java/C# on Unix/Linux/Windows platform).
• Solid software development background including design patterns, data structures & algorithms.
• Solid experience with distributed (multi-tiered) management systems, algorithms and relational databases.
• Proficiency using modern web development technologies and techniques including JavaScript, Ajax, Responsive Design Etc.
• Strong customer focus, ownership, urgency and drive.
• Having experience in Hospitality/Travel/Internet/Online/Start-up/IT/Logistic/Courier/Cargo/ Transportation would be preferable.





Job Description :
Hiring for Staff Engineer (Back end) for a leading product based company at DLF IT Park, Chennai.
Skill Set :
- Strong Experience in any Programming language (Ruby, Go, Java, or other high-performance languages), Architecture, Design (HLD/LLD), Data structures, Algorithms, Hands-on Coding, Problem Solving, etc
- Experience in Web Technology is Must.
- Looking for candidates with good experience in product development.
- Candidates from product development companies will be preferred.
- Candidates willing to relocate/preferring Chennai can apply.
Responsibilities :
- Analyze and drive product requirements
- Architect and design product features for scale and maintainability
- Lead in the design, implementation, and deployment of successful systems and services
- Ensure the quality of architecture and design of systems
- Implement code with very high coverage of unit tests and component tests
- Perform design and code reviews
- Functionally decompose complex problems into simple, straight-forward solutions
- Fully and completely understand system interdependencies and limitations
- Possess expert knowledge in performance, security, scalability, architecture, and best practices
- Software development of high quality/availability core systems
- Cross-training peers and mentoring teammates
- Document HLD/LLD for easy knowledge sharing and future scaling
Must have :
- 8-12 years of experience designing, integrating and developing distributed applications in Ruby, Go, Java, or other high-performance languages
- Experience with cluster and container orchestration systems such as Docker, Mesos, Marathon, Salt or Kubernetes.
- Experience with Service design, systems engineering, API Design and versioning
- Understanding of Design Patterns, Serverless computing, cloud-first architecture, TDD, BDD, CI/CD, Integration Patterns
Good to have :
- Experience building distributed systems using Kafka. Strong grasp of fundamental concepts of Kafka, ZooKeeper and building producer and consumer applications using Kafka
- Familiarity writing and optimizing advanced SQL queries
- Good Linux/UNIX systems knowledge
- AWS compute and storage PaaS services. AWS certified solutions architect nice to have.
- Experience productionizing Machine Learning models
- Experience publishing technical papers in reputed conferences.






