Sr. Software Engineer – Marketing Journey
Location: Remote
Job Type: Full Time / Permanent
As a Sr. Software Engineer, you will help us drive our key retail disruption initiatives through technology that matters. We empower our engineers to tear down the silos and work collaboratively with their product team to deliver solutions. We work in nimble product teams composed of engineers, designers, and product managers that aren’t bogged down by project plans and politics, but are empowered to continuously create, test and execute.
Here is a list of our platforms. Don’t worry, you don’t have to be a master at them all. Ideally, you’ll have experience in a couple of them: • Adobe Experience Platform • Adobe Audience Manager (AAM) • Adobe Campaign Standard (ACS) • Adobe Real-Time Customer Data Platform (RTCDP) • Adobe Journey Optimizer (AJO) • Azure Cloud • NodeJS • Express/Fastify • PostgreSQL • Kafka
As a Senior Software Engineer you will: • Bring at least 5 years of experience to the table. • Work collaboratively with designers, product managers, and engineers. • Leverage cutting-edge technologies and modern practices. • Identify and communication technology problems and prepare remedies. • Build and ship high-quality code at a rapid pace. • Work with open-source tools to build new technologies. • Participate in design thinking activities to improve the user experience. • Work with great people at our sprawling Pittsburgh campus that includes sports leagues, a world-class health club, and a dynamic culture. • We believe that there is always a better way.
So, we will expect you to: • Continuously learn modern software design and development core practices, utilizing articles, MeetUps, conferences, tech talks, etc. • Review and discuss code with engineering peers and leaders to understand best practices and optimal design patterns. • Take the initiative to drive new ideas and projects. • Increase your business acumen by consistently learning about other parts of the business. • Support and mentor junior members of the Software Engineering team. Lastly, here’s some stuff that won’t be part of your day-to-day.
You won’t: • Work in a silo • Be limited by project plans. • Find yourself stuck in a boring cube. • Pay to park or be stuck in a corporate high-rise. • Be pigeonholed into proprietary and stagnant codebases.
JOB DUTIES AND RESPONSIBILITIES: • Delivery & Execution: • Designs and develops scalable and robust software solutions utilizing Adobe Experience Platform (AEP), including Real-Time Customer Data Platform (RTCDP) and Adobe Journey Optimizer (AJO) • Collaborates with cross-functional teams to understand use cases, identify requirements and translate them into technical specifications. • Collaborates and pairs with other product team members (UX, engineering, and product management) to create secure, reliable, scalable software solutions. • Works with Product Team to ensure user stories that are developer-ready, easy to understand, and testable. • Designs and implements data models, APIs, and integrations with external systems that empower the business to build segments and activate campaigns. • Writes clean, efficient, and scalable code to deliver software solutions that are secure, performant, and maintainable. • Writes custom code or scripts to automate infrastructure, monitoring services, and test cases. • Writes custom code or scripts to do “destructive testing” to ensure adequate resiliency in production. • Configures commercial off the shelf solutions to align with evolving business needs. • Creates meaningful dashboards, logging, alerting, and responses to ensure that issues are captured and addressed proactively. Support & Enablement: • Fields questions from other product teams or support teams • Monitors tools and participates in conversations to encourage collaboration across product teams. • Provides application support for software running in production. • Proactively monitors production Service Level Objectives for products. Proactively reviews the Performance and Capacity of all aspects of production: code, infrastructure, data, and message processing. Learning: • Participates in learning activities around modern software design and development core practices (communities of practice) • Proactively views articles, tutorials, and videos to learn about new technologies and best practices being used within other technology organizations. • Reviews and discusses code from more senior engineers to understand best practices and design patterns. • Increases business acumen by learning about other parts of the business. •
QUALIFICATIONS: • Bachelor’s degree • 5-7 years of experience • Strong proficiency in programming languages such as Python and JavaScript libraries (NodeJS and Express/Fastify) • Experience with Adobe Real-Time Customer Data Platform (RTCDP) or Adobe Journey Optimizer (AJO) is highly desirable. • Experience in a Linux or Unix based environment. • Exposure to query optimization and troubleshooting. • Exposure to REST and effective web service design. • Exposure to a cloud computing platform (such as AWS or Azure) and the associated automation patterns they provide. • Experience in writing SQL queries against a relational database. Working experience in SQL and NOSQL. Preferred PostgreSQL. • Experience with modern software development practices such as TDD, Agile, DevOps, and CI/CD • Familiarity with Agile development methodologies and tools (GitHub, Jira) • Strong problem-solving skills and attention to detail. • Excellent communication skills and ability to work in a team environment.