Senior Cloud Applications EngineerApply
The Senior Cloud Applications Engineer will be the hands-on team lead responsible for building and supporting algorithm and application logic for the SN LABS product platform. In this role, the position will be responsible for development and support of multi-tiered systems that captures data 24 hours a day supporting millions of devices, makes data accessible at scale via APIs and front-end web systems, and leverage established tools to automate the operation and maintenance of such systems with high levels of performance and availability. The ideal candidate will have experience focused on the following AWS managed services, coupled with Micro-services (ECS Amazon Elastic Container Service (Amazon ECS, S3, Lambdas,SQS)
- Development and support of algorithm driven applications with data processing
- Work closely with product, engineering, QA, DevOps and support teams to define and refine our cloud platform to achieve company objectives.
- Ensure high availability and provide application support
- Continually improve operational processes and procedures
- Collaborate with other technology teams and to define protocols, API's, to operate and acquire data from large numbers of Internet-connected devices
- Develop and support all aspects of our cloud presence on Amazon Web Services
- Degree in Computer Science, Electrical Engineering or equivalent
- At least 7+ years of software development experience with latest 1 to 2 years in cloud development
- Strong hands on experience with distributed system design at scale
- Strong expertise and experience in JDBC and data-oriented development
- Experience in Internet of Things (IoT) architecture is preferable
- Experience in developing distributed cloud applications and systems using Java and Scala preferably on AWS
- Strong experience with Java, AWS EC2, EMR, RDBMS, Cassandra or any other NoSQL DB
- In-depth experience in data and application modeling
- Experience in Agile/SCRUM enterprise-scale software development
- Design Patterns
- Dependency Injection
- Network concepts (TCP, UDP, Ports, Proxy, Firewalls)
- Junit (or other unit testing framework)
- Application server/container configuration management and application deployment (Tomcat , Jboss etc)
- Distributed Patterns (Caching, Transactions,Message queues, Partitioning, Sharding)
- Scaling Application under load (Partitioning, Sharding)
- Persistence with Relational Database (SQL and JDBC) and Non Relational Database (Redis, Cassandra etc)
- Experience with Build Tools (Jenkins , Dockers ) , version control (Git) and dependency management (Maven or Gradle)
- Experience with Production and Performance Troubleshooting Tools (ELK , Splunk, Sumologic , Wireshark, jConsole, HeapAnalyzer, jMeter, Java profiler (VisualVM, JProfiler, YourKit))
Knowledge, Skills & Abilities
- Demonstrated ability to achieve stretch goals in a highly innovative and fast paced environment
- Possess strong verbal and written communication skills
- Possess strong analytical skills, with excellent problem-solving abilities in the face of ambiguity
- Demonstrated understanding of high scale cloud architecture
- Good understanding of scalable distributed computing systems, software architecture, data structures and algorithms using Hadoop, Apache Spark, Apache Storm, etc.
- Proficient in network, distributed, asynchronous and concurrent programming
- Components of our system that are helpful to be familiar with AWS products such as EC2, S3, EMR, SQL and Cassandra database technologies, C and Java.
- Experience with Big data streaming framework like Flink or Flume or Spark or Kinesi
- Experience with KAFKA
Recently Viewed jobs
No jobs have been viewed recently.
Sorry, you do not have any saved jobs.
“We have the freedom of a start-up to explore new technology and methods, backed by a strong company like Sleep Number.”Abhishek, Director of Analytics