HireFT
Browse JobsHow it worksPricingAboutSuccess Stories
    Back to jobs
    ST

    StackAvenue Technologies

    Software Engineering

    Sr. Software Developer (IOT)

    Pune, IndiaRemoteFull-time5+ yrs experiencePosted 3w ago
    View all jobs

    Job description

    As a Senior Software Engineer in the IoT domain you will be responsible for developing critical systems keeping in mind.

    • Concurrency: You must handle multiple activities concurrently like fetching and sending multiple messages from/to multiple devices at the same time.

    • Distributed Operations: You must run on a distributed network of multiple servers in different geographies, coordinating through APIs on a microservices architecture.

    • Scalability: You must scale horizontally as the traffic grows and leverage on the multiple CPU cores of the servers to run parallel threads.

    • Responsiveness: You must maintain a strict time-frame of <100ms to respond to users and devices, even when the servers are flooded with multiple requests.

    • Reliability: You must stay in continuous operation for years without any server downtime or restarts even for system updates through hot-swapping.

    Your Roles and Responsibilities

    • Design and write programs to improve the availability, scalability, latency, and efficiency of Company’s IoT systems.

    • Work with the engineering team to explore and create new design/architectures geared towards scale and performance.

    • Work with multiple data ingestion sources and protocols like HTTP, MQTT, CoAP,OPC UA and databases to drive efficient ETL processes for streaming data from IoT sensor devices

    • 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.

      Required Software Aptitude and Qualifications 

      • 5+ years of overall software engineering experience.

      • Programming experience with modern languages such as Ruby/Python/Elixir etc.

      • 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.

      • 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.

      Good to have experience with Elixir

      It would be amazing if you have some experience working with Elixir Lang.

      • You should be aware of idiomatic programming in Elixir, and should have good awareness of concepts such as pattern matching, recursion, and behaviours.

      • 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.

      Job Type: Full-time/Part-Time/Remote

      Work Remotely

      Job details are sourced from the employer's original posting.

      Open job posting
      ST

      About the company

      StackAvenue Technologies

      We&apos;re building out the products and infrastructure that powers much business and we are looking out for people who have experience working as &quot;Senior Software Engineer in Python and DevOps&quot;. What we also expect is, you&apos;ve definitely built out complex applications, either by yourself, or as part of a larger team, and have an (obsessive?) desire for maintainability.

      View all StackAvenue Technologies jobs
      Industry
      Software Engineering
      Open roles
      7

      Interested in this role?

      Apply with HireFT

      Free to start — no card required.

      Your fit

      How well do you match?

      Sign in to see how your résumé lines up with this role.