Full Stack Software Engineer
425 W. Randolph St. Chicago, IL 60606
Full Stack Software Engineer
Our philosophy is build it, break it and then rebuild it better. We are seeking a talented Software Engineer (Full Stack Visualization) to work in the Connected Vehicle Services group. The team develops high-volume, low-latency, real-time event processing and machine learning systems in a cloud environment to enable “ highly automated driving” cars.
We are looking for people to help us build visualization tools to simulate input to, and visualize the output of, our back-end data processing systems that collect and analyze sensor data from cars and turn that data into the information that will enable self-driving cars.
• Read through user stories in Jira and understand your commitments
• Catch up with your team on what was accomplished yesterday and plan today’ s work
• Discuss the design and implementation approach of new features and negotiate acceptance criteria.
• Write clean, fast code to implement new features
• Learn and play with the code that is about to change and think how to improve it
• Make sure changing code has enough unit test coverage
• Read or watch some tech article, learn about new Java features, or the upcoming Star Wars movie
• Deploy a stack into AWS with your code
• Do a code review or respond to yours
• Celebrate successes with your team members
Smart – We are looking for someone who understands how all software components fit together. From persisting data to message processing, you understand how to create a highly scalable, highly available system deployed in the cloud.
Fast learning – Never Stop Learning! We are looking for Software Engineers who love to learn new things. You stay up to date with the latest technology trends
Team Player – No one is an Island! Our teams are highly collaborative. You believe that a team can accomplish more than one person working alone and continuous improvement is key to a team’ s success. When you learn something new you are eager to share your findings with others
Adaptable – Our products are evolving and as they evolve our technical solutions evolve as well. You easily pick up new technologies and use those technologies to solve problems in creative and innovative ways. You use processes like Agile and Lean to enable software development.
Driven – Figure it out! Creating and delivering valuable software is your top priority. You know your code will work because it is covered in tests. TDD and BDD are your main methods of achieving high test coverage. To deliver quickly, you believe automation is key.
• Build web services for integrating the UI with existing sensor data processing pipelines, using some combination of node.js and Java
• Write/update tests and documentation
• Create/maintain automation and development tools
• Conduct code reviews
• 5+ years of full stack development experience
• Good understanding of node.js, jQuery, and at least one " modern" JS framework such as React or Angular
• Working knowledge of Java or another JVM-based language such as Scala or Groovy
• Understanding of fundamental design principles behind a scalable application
• Ability to implement automated testing platforms and unit tests
• Working knowledge of at least one version control system such as Git
• Bachelor’ s degree in Computer Science or equivalent work experience
• Experience deploying web applications to AWS
• Experience with one or more automated UI testing tools such as Sahi or Selenium
• Experience developing web-based mapping applications using the HERE Maps API, Google Maps API, Leaflet, or similar
• Experience using Google Protocol Buffers
• Familiar with Agile methodology
• Experience with BDD and TDD
• Visited and laughed at xkcd.com