

Company Introduction
AutoScheduler is looking for a remote senior software developer to join our talented team. The ideal candidate is a self-starter who is interested in constant learning. We want this person to join our dynamic team as we take an established software and re-develop it from scratch as a part of a new start up.
Job Description
We are looking for a Backend C++ developer responsible for maintaining and developing algorithmic C++ for new and existing customers. Your primary responsibilities will be to design and develop applications and services, and to coordinate with the rest of the team working on different layers of the infrastructure. Therefore, a commitment to collaborative problem solving, robust design, and quality product is essential.
Responsibilities
- Work with non-technical personnel to translate business requirements into stories and epics
- Translate application storyboards and use cases into functional applications / features
- Design, build, and maintain efficient, reusable, and reliable code
- Ensure the best possible performance, quality, and responsiveness of applications
- Identify bottlenecks and bugs, and devise solutions to these problems
- Help maintain code quality, organization, and automation
- Write and maintain unit/functional/integration tests
Requirements
- Bachelor’s degree with STEM concentration + 2 years’ work experience, or equivalent work experience
- Fluent in English
- Demonstrably proficient in C/C++ and the ability to parse C/C++ code
- Proficiency in Node.js and Javascript
- Basic understanding of Common Language Runtime (CLR), its limitations, weaknesses, and workarounds
- Working knowledge of at least two other programming languages (e.g. Go and Python)
- Proficient understanding of modern distributed code versioning tools (like ‘git’)
- Thorough understanding of SQL, and in-depth experience with at least one RDBMS (e.g. PostgreSQL or Microsoft SQL Server)
- Experience with automated testing frameworks and unit tests
- Solid understanding of object-oriented programming and principles
- Knowledge of functional programming principals / concepts
Desired Skills
- Experience building applications with C++
- Experience building cross-platform applications with Scala
- Experience with functional programming
- Familiarity with concurrency patterns in Scala
- Experience building distributed systems and/or decoupled microservices
- Experience building software using cloud-based services (in any cloud platform)
- Experience using “gRPC” and Protocol Buffers (“protobuf”) and/or experience creating services that exchange non-JSON data over non-HTTP protocols
- Familiarity with continuous integration
- Familiarity with Docker / containerization

About Transportation | Warehouse Optimization
Similar jobs
Tasks:
· You will take part in the design of the architecture and the development of modern software-based applications in the back-end (Node.JS, TypeScript, Nest.JS)
· You support the technological conception, programming and implementation of new features
· You help manage IoT-to-Cloud services, Microservices, Kubernetes and Docker on GCP
Requirements:
· Bachelor or Master student in an IT-related field of study
· Ability to holistically conceive applications in multiple technologies in the backend
· Experience in agile software development with JavaScript, TypeScript, Node.JS and ideally Nest.JS
· First experiences in Cloud (AWS/Azure/GCP) and Docker
·
Nice to Have:
· Experience with GraphQL, Microservices, Kubernetes
· Understanding of IoT device management and message brokers like AMQP or MQTT
Benefits:
· A responsible position in a fast-growing and highly innovative start-up
· An agile and diverse team with colleagues from all over the world
· English speaking open work environment, with flat hierarchies and short decision-making paths
· Advanced technology stack leveraging cutting-edge IoT hardware and software
· Creative freedom for own ideas, projects and personal development
· Team building, learning and start-up events

- BS in CS or EE or equivalent
- Experience working on large scale systems in rapid growth environments
- Experience with public cloud offerings (AWS, GCP, Azure)
- Solid programming skills; preferred experience in Java, and/or Python
- Experience with modern web frameworks, advanced algorithms/data intelligence, public
- cloud platforms and streaming data pipelines
- Familiarity with containerization, microservices architecture, continuous integration, and delivery
- 5+ years’ experience preferred
JOB RESPONSIBILITIES (About 10 - 11 years and at least 9 years relevant experience)
Develop Java webservices and components according to a detailed design document.
Build efficient, reusable and reliable Java code per industry best practices.
Follow TDD approach and ensure unit-test coverage meets quality requirements.
Develop Integration tests to ensure coding adheres to acceptance criteria and verify end-to-end behavior of the system.
Ensure best possible performance, quality and responsiveness of applications.
EXPERIENCE / SKILLS
Must have experience developing in Java latest version (least version is 8)
Must have experience in design and development using Micro service architecture
Solid knowledge in OOP concepts, and design principles/patterns for developing scalable applications
Must have experience developing Spring Boot applications
Must have experience developing database access layer using Spring Data JPA/Hibernates
Must have experience in developing REST Services using Spring
Good working experience in development of event driven systems using any framework
Must have experience with any RDBMS and at least one NoSQL database preferably PostgresSQL and Mongo DB
Must have experience writing unit and integration tests using Junit
Must have experience using mock frameworks like Mockito, WireMock
Must have experience using Git
Must have experience with CI / CD
Basic hands-on experience in one of the cloud provider (AWS/Azure) or at least docker and Kubernetes
Familiarity with build tools Maven or Gradle
Added advantage with experience of Reactive and Functional Programming
Dropwizard or Springboot like technology
Algorithms and Data structures .
Position Summary
We are looking for a Software Engineer to join our creative team of UI designers and developers. You will work with a team of experts in user experience, design, web application backend and frontend development.
As a Software Engineer, you will implement easy-to-use and scalable web applications offering creative solutions to configure, monitor, and visualize new generation edge computing services. You will vet various open source and close source technologies, components, libraries, tools, etc. and help build a scalable, highly available, and easily manageable system
Responsibilities:
-
Architect and design intelligent web applications that serves the diverse requirement of edge computing solutions
-
Code while considering performance, scalability, maintainability, and flexibility
-
Innovate on features to deliver simple and intuitive usage for provisioning, monitoring, information visualization, debugging, and big-data analysis
-
Collaborate with architects, UX designers, and product managers to build a delightful user experience
-
Chip in to design end-to-end system architecture, working with different technical teams
-
Learn and apply new technologies, best design practices and usability patterns
-
Share the knowledge with code reviews and suggestions to ensure quality of product according to standards, processes and procedures.
Knowledge, Skills and Abilities
-
At least 3 years of experience with JavaScript
-
At least 2 years of experience with Typescript and Angular
-
Strong knowledge of HTML5, CSS3, and SASS/SCSS
-
Deep understanding of e2e testing and test automation of web applications
Qualifications
-
At least 3 years of experience and BS/BA or MS in Computer Science/related field or equivalent work experience.

- Strong experience in Docker.
- Good knowledge with any of the Cloud Platform like Azure.
- Must be comfortable working in a Linux environment.
- Must have exposure into IOT domain and its protocols ((Zigbee,BLE ,LoRa, Modbus)
- Must be a good team player.
- Strong Communication Skills

- Computer Science fundamentals in object-oriented design, design patterns, data structures, algorithm design,
- Proficiency with Java
- 1+ years of experience contributing to architecture and design in a product setup
Key Responsibilities
- Understand customer needs by collaborating with Product Managers and Business stakeholders
- Design, development, delivery, and support of large-scale, distributed software applications and tools
- Use software engineering best practices to ensure a high standard of quality and maintainability for all deliverables
- Work in an agile, startup-like development environment, where you are always working on the most important stuff.
- Take initiatives and come up with new ideas to invent solutions for customers

Roles and responsibilities
-
- Develop well-designed, performant and scalable microservices
- Write reusable, testable, and efficient code that follow software development best practices
- Integrate data storage solutions including databases, key-value stores, blob stores, etc.
- Expose business functionality to frontend/mobile applications and partner systems through secure and scalable APIs.
- Build integrations with 3rd party applications through apis’ to ingest and process data
- Ensure security and data protection aspects within the applications
- Contribute to devops by building CD/CI pipelines to automate releases
- Ensure high performance and availability of distributed systems and applications
- Interact directly with client project team members and operational staff to support live customer deployments and production issues.
- 4+ years of experience in developing applications using Scala and related technologies.
- Thorough understanding of multithreading concepts and async execution using Actor model.
- Thorough understanding of Play framework, GraphQL and GRPC technologies.
- Experience in using DAL and ORM (Object Relational Mapper) libraries for data access.
- Experiencing in developing and hosting APIs and integration with external applications.
- Experience in building data models and repositories using relational and NoSql databases.
- Knowledge of JIRA, Bitbucket and agile methodologies.
- Good to have knowledge of AWS services like Lambda, dynamodb, kinesis and others.
- Understanding of fundamental design principles behind a scalable application.
- Familiarity with event-driven programming and distributed architectures.
- Strong unit test and debugging skills
- Affinity for learning and applying new technologies and solving new problems
- Effective organizational skills with strong attention to detail
- Experience in working with docker is a plus
- Comfortable in working with Unix/Linux environment
- Strong communication skills — both written and verbal

You will break down business opportunities and problems into software solutions. You will work closely with the CTO to help product and marketing stakeholders distill the product vision and roadmap, into a technology vision. You will be responsible for the evolution of an already bleeding-edge highly distributed systems at the back-end, and would need to work with front-end architects to come up with the best user experience for the gaming platform. You will be required to make decisions quickly, and work under strict timelines. You would lead technology strategy through analysis of market trends and product requirements. You would help set coding guidelines and help bring the most modern tools to keep engineering processes most efficient.
Requirements:
● B.E/MS in Computer Science or equivalent.
● 10+ years or more of progressive software technology experience with at least 3 years
in an architectural role.
● Completely hands on with technology and architecture. Start-up experience is a huge
plus.
● Ability to quickly prototype and demonstrate technology value adds and educate + drive
adoption within the extended technology team
● Excellent and robust understanding of scalable product system architecture(s),
platforms and core technologies
● Demonstrated problem-solving and leadership skills to pursue correct engineering
process in adverse conditions. Ability to embrace and demonstrate leadership beyond
ownership
● Work with engineering leadership to setup and manage processes.
● Track record of thought leadership and out of the box thinking in the technology arena.
● Ability to work efficiently in an entrepreneurial and in a start-up environment
● A Java/Spring/Akka, Javascript or Golang rockstar.
● Deep and hands on knowledge of some of these technologies - MySQL, NodeJS,
message brokers such as Kafka/RabbitMQ, NoSQL datastore such as Mongo, Cassandra,
Arango, distributed caches such as Redis/memcached, container technology such as
Docker and Kubernetes etc.
● Great proficiency in distributed systems design, with an ability to make the right
trade-offs for creating future-proof solutions.



