Job Description

Company Description:

McDonald’s evolving Accelerating the Arches growth strategy puts our customers and people first, and leverages our competitive advantages to strengthen our brand.  We are recognized on lists like Fortune’s Most Admired Companies and Fast Company’s Most Innovative Companies.

Doubling Down on the 4Ds (Delivery, Digital, Drive Thru, and Development)
Our growth pillars emphasize the important role technology plays as the leading, global omni-channel restaurant brand. Technology enables the organization through digital technology, and improving the customer, crew and employee experience each and every day.

Global Technology forging the way
Leading the digitization of our business is the Technology organization made up of intrapreneurs who build industry defining tech using the latest innovations and platforms, like AI and edge computing to deliver on the next set of cutting-edge opportunities for the business.  At McDonald’s you get to solve technology innovation challenges at an incredible scale, and work across global teams who are always hungry for a challenge. This provides access to exciting career paths for technologists. It’s bonus points when you get to see your family and friends use the tech you build at their favorite McD restaurant.

Check out the Global Technology Technical Blog to learn how technology is directly enabling the Accelerating the Arches strategy.

Job Description:

As a Software Development Engineer, you will be responsible for the design, development, testing and maintenance of the McDonald’s Restaurant Technology software, which typically includes point-of-sale (POS) plugin development, application services, core infrastructure, data management, and data communication with external systems. The software needs to meet stringent reliability and performance requirements.

Responsibilities include

  • Working in a software development squad for restaurant products to support the design and development for new functionality and items relating to technical debt.
  • Ensuring product requirements, features, and backlog items are reviewed and understood as part of Sprint planning.
  • Actively participating and assigning story points (effort estimations) to the software development work.
  • Verifying software through unit tests, integration tests, code reviews, and frequent customer demonstrations.
  • Sharing feedback on what went well and what could be improved during retrospective reviews.
  • Providing frequent progress updates to the direct manager and other collaborators.
  • Bachelor’s degree in Computer Engineering, Computer Science, or similar engineering field.
  • Minimum 2 years of experience in software development projects using C/C++, and C#.
  • Minimum 1 year of experience in script development using JavaScript and XML.
  • Experience developing software within an Agile environment.
  • Strong knowledge of configuration management tools like Git, Bitbucket, Artifactory, Jira, TeamCity or similar.
  • Strong knowledge of a services-oriented and layered software architecture.
  • Experience with unit testing and static analysis tools like SonarQube or similar.
  • Experience developing and releasing software within a CI/CD environment such as Jenkins.
  • Familiarity with code debugging tools and strong debugging skills (call stack analysis, profiling, breakpoint evaluation, logging, resource budget analysis as Flash, RAM and CPU load).
  • Experience in writing software requirements and design documentation.
  • Demonstrated the ability to work in a variety of client settings and in a team-oriented, collaborative environment.
  • Demonstrated significant problem-solving capabilities and defect resolution experience.
  • Good written and verbal communication skills.
  • Easily switch between the projects and as needed work on multiple projects simultaneously.

Preferred Qualifications

  • Experience with POS architecture.
  • Experience with restaurant technology implementation for production.
  • Experience with local and global scripting for customization purposes.
  • Experience with network client/server architecture.
Additional Information:

McDonald’s is an equal opportunity employer committed to the diversity of our workforce. We promote an inclusive work environment that creates feel-good moments for everyone. McDonald’s provides reasonable accommodations to qualified individuals with disabilities as part of the application or hiring process or to perform the essential functions of their job. If you need assistance accessing or reading this job posting or otherwise feel you need an accommodation during the application or hiring process, please contact Reasonable accommodations will be determined on a case-by-case basis.

McDonald’s provides equal employment opportunities to all employees and applicants for employment and prohibits discrimination and harassment of any type without regard to sex, sex stereotyping, pregnancy (including pregnancy, childbirth, and medical conditions related to pregnancy, childbirth, or breastfeeding), race, color, religion, ancestry or national origin, age, disability status, medical condition, marital status, sexual orientation, gender, gender identity, gender expression, transgender status, protected military or veteran status, citizenship status, genetic information, or any other characteristic protected by federal, state or local laws. This policy applies to all terms and conditions of employment, including recruiting, hiring, placement, promotion, termination, layoff, recall, transfer, leaves of absence, compensation and training.

Nothing in this job posting or description should be construed as an offer or guarantee of employment.

Application Instructions

Please click on the link below to apply for this position. A new window will open and direct you to apply at our corporate careers page. We look forward to hearing from you!

Apply Online