Senior Software Development Engineer
- Sunnyvale, CA
Come join Amazon's International Technology org (INTech) team at Amazon's development center in Madrid, Spain. We are searching for a smart, energetic, curious, and self-disciplined Software Development Engineer to define and deliver our efforts for our current and future Customers.
Amazon strives to be Earth's most customer centric company, and INTech owns defining and delivering Amazon's cutting-edge engineering to customers and cultures across Europe. We do this by developing our own customer-facing features, services and platforms based on custom European needs, and through partnerships with other Amazon technical teams around the world. Our work spans a deep technology stack from front-end customer experience to back-end service technology and has high visibility to senior leadership, with small teams delivering highly significant projects.
We are developing software to improve the Customer Experience on Amazon's EU and Global websites and apps and to evolve our back-end services, tools and platforms to better support Amazon's businesses. Projects span the definition of new customer-facing features, programs and services to the internal development of new systems, customization of existing systems, and integration of software developed by third parties. This team will develop true pan-European programs that serve our European customers and businesses.
These teams are comprised of Software Engineers at multiple levels alongside Technical Program Managers, UX Designers, and Business partners. Engineers on this team will work closely with a variety of business and technology platform and service teams across Amazon.
In INTech, we look for experienced software engineering leaders who possess a wide variety of skills. As the successful applicant for this role, you will solve varied complex problems across Amazon (including business prioritization, technical challenges in optimization, large-scale computing, distributed systems, web applications, scalability, security, and algorithms, to name just a few), you will drive multiple programs in parallel, you will work with business stakeholders and partner technical teams across Europe, Asia, India and the USA, and you will support the growth and development of a high-performing software engineering team. INTech is composed of many clever and generally awesome people, so you'll learn a huge amount - and have a lot of fun - in the process!
• Experience taking a leading role in building complex software systems that have been successfully delivered to customers
• Computer Science fundamentals in object-oriented design
• Computer Science fundamentals in data structures
• Computer Science fundamentals in algorithm design, problem solving, and complexity analysis
• Proficiency in, at least, one modern programming language such as C++, C#, or Java
• Communication in English - Although position is in Madrid we have have colleagues from all over the world. Therefore the working language of the position will be in English.
• Bachelor's Degree in Computer Science or related field, or 8+ year relevant work experience
• Master's Degree in Computer Science or related field.
• Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
• Experience with distributed computing and enterprise-wide systems
• Strong problem solving, communication, presentation and interpersonal skills.
• Architecture skills, knowledge of design patterns, and strong fundamentals.
• Experience in communicating with users, other technical teams, and senior management to collect requirements, describe software product features, technical designs, and product strategy.
• Experience developing RESTful web services and complex software systems that have been successfully delivered.
• Experience working with cloud architecture, web services, and web sites
• Experience working with Linux.
• Hands-on expertise in many disparate technologies, typically ranging from front-end user interfaces, data stores, cloud technologies, and back-end systems.
• Experience mentoring junior software engineers to improve their skills, and make them more effective, product software engineers.
• Experience influencing software engineers best practices within your team.
• You are the type of person that quickly wins the respect of peers, and jumps at the chance to share knowledge and mentor.
Back to top