Senior Software Engineer (Java) - Control Room
TE2, The Experience Engine, a division of accesso, provides consumer-facing enterprises an engine to drive personalization, recommendations and commerce for the physical world, in real-time. We believe every consumer facing business with physical locations will benefit from a machine-learning based platform that provides deep insights and recommendations for how consumers interact and ultimately spend with global brands.
As a Java Software Engineer on TE2's Engineering team, you will be designing and developing components of TE2’s Control Room interface. Control Room is the single interface our customer's use for designing, managing and analyzing experience management campaigns. Within the Control Room module, our customers get a real-time glimpse of in-venue activity and define criteria for content targeting using customer attributes, behavior, location and time of day. Control Room is also used to update map content, events, schedules, and menus. Learn more here: https://www.theexperienceengine.com/control-room/
Some of what you will be working on:
- Enabling personalized guest experiences based on specific location using location-based technologies (BLE Beacons, GPS, and WiFi Position Triangulation)
- Perfecting turn-by-turn navigation
- Mapping global places and venues
- Developing software to revolutionize the integrations with a wide variety of customer systems of record
- Building frameworks which will enable rapid deployment of new customers and real-time monitoring of the environment
- Exposing our customers' product catalogs through mobile apps tightly integrated with location services
- Providing analytics on user browse, search, and purchasing activity that drive personalized recommendations
- Enabling redemption of experiences through integrations with barcode scanners, ticketing systems, and wearable devices
- Implementing the latest in service-based authentication security protocols and solutions
- Capturing, storing, and protecting profile data in order to build an overall snapshot of a consumer
- Mapping and determining relationships amongst various user identities whether it be individually, between people, or groups of people (Identity Management)
Technical challenges you may tackle include:
- Contributing to our platform architectural transformation into a modern, scalable microservices foundation
- Assisting in the design and implementation of a secure, restful API Gateway with routing to platform micro-services
- Helping to design and implement a distributed trace logging for all eOS micro-services
- Contributing to data modeling and migration from single-tenant Couchbase databases into a multi-tenant cluster
- Implementing complex domain-model mappings between our client-facing APIs and customer systems of record
- Implementing our product suite in ways that provide simple, usable common functionality, while allowing customer-specific added functionality
- Continuously deploying our software into a cloud-based platform using tools such as Jenkins, Docker, and Kubernetes
- Building reusable, multi-tenant software components that integrate with content management systems, commerce systems, and other industry-specific platforms
Some of the technologies you will be working with:
- Java 8
- AWS, Cloud Elastic Architectures
- Multiple Apache projects, including: ServiceMix, CXF (JAX-RS), ActiveMQ
- Spring Boot
- Microservice Technologies: Eureka, Ribbon, Hystrix
- RESTful / JSON web API service layerCouchbase (NoSQL) data persistence and cache layer
- Continuous delivery integration through Jenkins pipelines
- 3+ years of related work experience
- BA/BS in Computer Science or a related technical field (preferred, but not necessary)
- Experience in Java or similar OO language (C#, C++)
- Strong grasp of OO programming principles
- Experience with REST APIs
- Willingness and ability to embrace an AGILE development methodology
- Expertise in a core area of technology in use by the business
- Ability to teach others and raise their level of expertise
- Exploring additional areas of technology that are in alignment with the company's goals and objectives.
- Understands and executes to use appropriate technology to build cutting edge products and services.
- Ability to apply appropriate design patterns to distill complex problems and make them simpler to resolve.
- Ability to adapt design patterns through thoughtful analysis of the requirements and context of the problem.
- Can be trusted to design a solution that involves many systems, front, back, in the middle, and not just a single coding problem.
Progress without Clarity:
- The developer can be trusted with a problem to be solved, not a task to be executed.
- Ability to break down the problem and determine the sequence and priority of the tasks within the problem.
- Ability to determine what is and is not in scope and an ability to appropriately adjust the scope in order to solve the problem properly.
- Essentially the problem can be resolved without perfect direction or clarity because the individual has the maturity and experience to breakdown and solve the problem.
Estimation and Planning:
- Proven ability not to underestimate or overestimate the amount of effort and time required to solve a problem.
- Proven experience and ability to communicate progress accurately and succinctly.
- Ability to influence others and use tact to ensure progress across domains and organizations.
- Can be trusted to deliver large projects independently that meet or exceed the requirements presented.
- An ability to work with others through points of disagreement and come out the other side and move forward with the decision.
- The ability to “disagree and commit.”
- Proven ability to influence others with tact, persistence, facts, and demonstration with an openness for corrections and direction from others.
- An understanding that influence is powerful, that words matter a great deal, and that the right words can enable the right result.
What We Offer:
- Competitive salary based on experience
- The opportunity to earn an annual company discretionary bonus with the potential for stock options.
- A flexible work schedule around our core business hours
- Generous PTO plan
- Health insurance plans, including employer-contributed HSA, as well as employer paid disability and life insurance.
- Matching 401K
- We are an E-Verify organization. Eligible candidates must be authorized to work in the US without requiring visa sponsorship.
- accesso is a drug free and smoke free company, meaning employees may not smoke or use illegal drugs while at work or away from work.
- This is a full-time position. No contractors please.
- If you are interested in joining a team who values Passion, Commitment, Teamwork, Innovation and Integrity and what we’ve described above is YOU, then apply today and let’s talk!