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 for a Laravel Developer for building high-performing, scalable, enterprise-grade applications. You will be responsible for web application development while providing expertise in the full software development lifecycle, from concept to design to testing. A commitment to collaborative problem solving, sophisticated design and product quality are essential.
Responsibilities:
- Build a high-quality web application from scratch.
- Responsive and adaptive web page implementation.
- Identify and communicate best practices for front-end engineering.
- Design, build and maintain efficient, reusable, and reliable code to ensure the best possible performance, quality, and responsiveness of the applications.
- Implement automated testing platforms and unit tests.
- Prepare and maintain all applications utilizing standard development tools
- Keep abreast of new trends and best practices in web development.
- Must possess excellent attention to detail and be able to familiarize and quickly learn new Software/ framework/ languages/ technology with ease.
- Must be able to apply innovative thinking at work.
Desired Skills:
- Good working knowledge of PHP-based MVC framework Laravel.
- Good understanding of Database concepts and working knowledge of MySQL.
- Good knowledge of PHP, HTML, CSS & Javascript.
- A clear understanding of RESTful API development standards.
- Excellent problem-solving skills.
- Knowledge of AngularJS is an added advantage.
- Understanding managing Linux servers & AWS/GCP
Job Description
This is a remote position.
Requirements
- You need to be excited about the problem that we are trying to solve
- Should have excellent command over designing systems with a minimum experience of 4 years.
- Should have experience with various database flavors and writing complex queries. We work with Postgres, Redshift, ElasticSearch, TimescaleDB, and Redis.
- Additional knowledge in Golang will be an advantage
- Strong Data Structures and Algorithms knowledge
- Should have created APIs from scratch which is being used in Production
- Should be comfortable with creating systems handling up to 100k requests per minute, and have a mindset that understands scale
- Ability to give clarity and communicate well with the team, including Product, Backend and Dev-Ops (if and when needed)
- Ability to use profiling tools well, getting to root causes of bugs fast
- Ability to pick and work on adjacent technologies if and when required (Eg: If the best performance monitoring solution needs a basic firebase setup, that should not be a blocker for you to go ahead and do so)
- Knowledge of how to set up relevant test cases
- You need to be comfortable working in a remote environment (Good internet connection and availability on phone is required)
- App Development experience
- Experience in Test Driven Development
- Ability to tell Product what creates better User Experience, ability to tell frontend what API responses will help the user get a faster load time
- Inquisitiveness to understand the system as a whole, and not only be stuck to your domain of expertise (Eg: Figure out why excessive APIs calls are being made, brainstorm with Product and Frontend team to reduce the same without harming the UX )
- Experience in working on a Social Media Product
- Good knowledge of Graphs, and their applications
- Data-Driven Approach to monitoring
Benefits
- Work timings - You are the master of your time. However, with great freedom comes great responsibility. If you have committed something to the team, we expect that you will give it your best to make sure that commitment is done and is done on time.
- Leave policy - Take a leave whenever for whatever reason you want. You don't need to explain yourself to us
- Health insurance for you and your family
2. Responsible for doing customer API integrations and other integrations required to onboard new e-commerce marketplaces, logistic providers, ERP and accounting systems. 3. Responsible to write code for API integrations, perform debugging tasks, do application tests, do configuration and code reviews to ensure the product is satisfactory.
The candidate would provide the firms SASS platform with ongoing technical support. This support includes responding to customer issues, providing updated software that solves bug issues, and working with the customer service team.
the core library/language constructs.
• Knowledge of processor, memory, network and storage internals. Familiarity with I/O optimized
algorithms.
• Deep understanding of distributed systems including fault modeling, concurrency, isolation,
consensus etc.
• Internals of a RDBMS like MySQL
• Conversant with the internals of systems like Kafka, Cassandra/Scylla, Redis, RocksDB etc
• Working knowledge of hosting and network infrastructure (K8s, Envoy, etc)
• Familiarity with binary serialization protocols like thrift/protobuf/flatbuffers etc
• Familiar with gRPC, HTTP/2, QUIC, etc.
• Troubleshooting memory issues, GC tuning, resource leaks etc.
• Strong problem-solving skills, algorithmic skills and data structures.
• Productionizing machine learning pipelines using Spark/Flink/TensorFlow etc
• Familiarity with big data concepts - HDFS, hive, presto, spark, oozie, ambari, airflow, atlas,
ranger, etc. Familiarity with formats like avro, parquet, orc, arrow etc
• Good understanding of branching, build, deployment, continuous integration methodologies
• Experience in leading a team and mentoring engineers
• Attitude to get Stuff Done!
• Ability to make decisions independently.
Desired Background:
• Bachelor’s or Master’s degree in Engineering from premier institutes preferred
• 8+ years of experience in software design, development & architecture
Work as a member of a team responsible for developing a large-scale, highly available and fault-tolerant SaaS based Leasing & Asset management solution in the commercial real estate space in accordance with established processes. You will apply your knowledge of building scalable, distributed applications and have the opportunity to work with technologies & frameworks such as Ruby on Rails, NodeJS, ReactJS, Heroku, AWS, Postgres DB
Essential Functions include but are not limited to the following.
You will be expected to:
- Contribute to all phases in the software lifecycle – requirements analysis, solution design, development, and deployment
- Maintain high quality standards for the work undertaken and be responsible for the quality of deliverables.
- Ensure assigned projects are developed in accordance with established engineering processes, adhering to scope, schedule constraints and agile project plans
- Guide/mentor the less experienced team members
- Participate in code reviews
- Work effectively as part of a distributed team
- Document the features worked by him/her
Key technical expertise areas expected for this role:
- Strong programming skills in Ruby with clear understanding of Object-Oriented and Functional programming.
- Experience working with Ruby on Rails framework
- Experience on REST API Programming preferably based on a Microservices Architecture
- Good Understanding of Databases (Postgres) and proficiency in database schema designing & writing efficient SQL Queries.
- Strong troubleshooting skills
- Demonstrable ability to learn new programming languages and frameworks quickly
- Experience with distributed systems with specific focus on security and scalability
- Experience with modern cloud technologies such as AWS
Additional areas that would add value:
- Experience working with Cloud Service providers & platforms like AWS, Heroku
- Strong understanding of Design Patterns & their application in system design
- Test Driven & Behavior Driven Development
- Automated Unit/Integration testing
- Using DevOps & Infrastructure tooling such as GoCD/Jenkins, Git
- Frontend web development with JavaScript frameworks like React
- Experience working on projects, preferably in the real estate domain
- Experience working with Virtualization and Containerization technologies including Docker, Kubernetes.
- Experience working in Agile Scrum/Kanban methodologies
- Experience working with Linux and Shell scripting
Education:
- Bachelors or Master’s in Computer Science or related fields