A Staff Software Engineer responsible for the development and support of applications for a specific area, leveraging his/her expertise and knowledge of multiple systems/customer areas.
Translates business requirements into well-engineered, tested and deployed application systems that are used by the business and supports these systems while in production. Interface with internal customers to determine the most efficient, cost-effective approach to meet their business requirements. Design, develop, test, install, and deploy the required software applications. Develop solutions utilizing a variety of software technologies, including new code construction, modifications to existing modules, configuration and/or package implementation. Performs other duties as assigned.
• Participate in the feasibility analysis for new systems/applications.
• Play a leadership role in troubleshooting technical design of new systems/applications for work type 1 and smaller type 2 projects, using functional specifications. Direct junior staff in the coding, configuration and testing needed to meet documented needs.
• Ability to read existing code to determine coding and/or configuration to meet documented needs, using standard procedures and techniques.
• Monitor operating efficiency of existing application systems and provides (or arranges for) proactive maintenance. Review, analyze, and modify systems, including coding, testing, and debugging.. Maintains records to document program development and revisions.
• Perform other duties as assigned.
• Provide technical support and resolves customer inquiries and production issues.
• Serve as a coach/mentor to less experienced developers. Manages and delegates tasks as appropriate.
• Consistently demonstrate regular, dependable attendance & punctuality.
• Bachelor’s degree and 8 – 10 years of related experience or an equivalent combination of education and experience.
• 5+ years hands-on experience with Java Enterprise, Java application servers (JBOSS, J2EE, Spring Boot), Relational Database (Oracle) and/or NoSQL data stores (Cassandra, Elastic search)
• Experience building scalable web services, ESB and event/stream processing. Preferred to have experience in Grails, Angular, React.
• Expert understanding of all application development processes including Macy’s Technology’s 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.
• Excellent written and verbal communication skills.
• Ability to read, writes, and interprets complex technical documents.
• Leads the development phase of projects, making work assignments and managing task completion. Select tools/methodologies for projects.
• Commit to deliverables for scope of work.
• Modify jobs and schedules for jobs as necessary.