Macy’s is proudly America’s Department Store. For more than 160 years, Macy’s has served generations at every stage of their lives. Customers come to us for fashion, value and celebration. Now is an exciting time to join Macy’s, Inc. The face of retail is changing, and change requires innovation.
Macy’s Tech provides modern tools, platforms, and services to all parts of the business. Our team supports millions of customers in connected commerce across the technology hub at Macy’s Join our team to help shape the future of e-commerce and set the pace in retail technology. Whether focused on store technology, supply chain tech, application security, merchandising systems, or the mobile app you’ll have opportunities to grow your career while finding meaningful ways to make a difference.
At Macy’s, we’re moving fast’we’re at top speed to become America’s premiere retailer. Macy’s Technology strives to set the pace by providing seamless and compelling shopping experiences for our Macy’s and Bloomingdale’s customers. Macy’s Technology is creating innovative technology solutions to support these experiences and define the future of retailing.
The Senior Software Engineer position reports to the Manager, Software Engineering, and is responsible for the development and support of applications leveraging his/her expertise and knowledge of multiple systems/customer areas to help build a robust, scalable and reliable platform.
If you're passionate about building highly scalable architecture and you are motivated to make an impact in creating robust software used across the organization, come join us. You will help shape the vision and architecture of Macy’s next generations incredible growth. You will be a part of an experienced engineering team and work with passionate leaders on challenging topics.
- Perform coding/configuration, testing, implementation and documentation on solutions developed including design specifications.
- Perform applications programming activities, to include code, test, debug, document, maintain, and modify applications programs.
- Ability to extract, analyze, and report the data.
- Strong attention to detail when identifying data relationships, trends, and anomalies.
- Thinking through long-term impacts of key design decisions and handling failure scenarios.
- Maintain awareness of industry trends and evaluate applicability of new software tools to platform development.
- Serve as a coach and mentor to more junior developers to include delegating and managing tasks, as appropriate.
- Consistently demonstrate regular, dependable attendance and punctuality.
- Commit to overall deliverables with customers and/or management.
- Perform other duties as assigned.
Qualifications and Competencies
- Bachelor’s Degree and 5+ years or related experience or an equivalent combination of education and experience.
- 5+ years hands-on experience with SQL like relational data stores (For example: Oracle, Hive or similar), NoSQL data stores (Cassandra, Elasticsearch or similar).
- Experience in coding applications using Java or Python.
- Experience building scalable web services, ESB and event/stream processing.
- Deep understanding of technology including (but not limited to) Hadoop (Flume, HDFS, Hive, HBase, YARN etc’), Spark, Kafka, Elasticsearch, Kibana, Tomcat, stream processing, RDBMS, NoSQL databases, and so on.
- Expert understanding of all application development processes including software development methodology; ability to serve as a resource to others.
- Expert in existing applications supporting the business area. Able to serve as a key resource to ensure the system is performing up to requirements.
- Ability to effectively share technical information, communicate technical issues and solutions to all levels of business
- Able to juggle multiple projects – can identify primary and secondary objectives, prioritize time and communicate timeline to team members
- Ability and desire to take product/project ownership
- Ability to work a flexible schedule based on department and Company needs.