Target is an iconic brand, a Fortune 50 company and one of America?s leading retailers.
Target as a tech company? Absolutely. We?re the behind-the-scenes powerhouse that fuels Target?s passion and commitment to cutting-edge innovation. We anchor every facet of one of the world?s best-loved retailers with a strong technology framework that relies on the latest tools and technologies?and the brightest people?to deliver incredible value to guests online and in stores. Target Technology Services is on a mission to offer the systems, tools and support that guests and team members need and deserve. Our high-performing teams balance independence with collaboration, and we pride ourselves on being versatile, agile and creative. We drive industry-leading technologies in support of every angle of the business, and help ensure that Target operates smoothly, securely and reliably from the inside out.
Core responsibilities of this job are described within this job description. Job duties may change at any time due to business needs.
We are looking for talented developers to join us in Cloud Platform Engineering team who implements and maintains the platforms and APIs that enable applications to utilize the Target?s private, public and hybrid cloud infrastructure.
Role : Full Stack Developer
Designation: (Sr. Engineer / Lead Engineer)
Full Stack Developer position provides a great breadth developer involvement in both architecting, delivering and operating critical environments in a micro-services architecture on a new cloud platform. Ideal candidates will have a strong base in full stack development with an emphasis on the data layers and micro-services design model. Modules include development for developer on-boarding, deployment dashboards, production monitoring and tooling. This is working on new product development efforts so most areas are relatively new and getting built from the ground up.
What you will do
- Design and develop highly scalable, reliable and fault tolerant systems for one of the world?s largest retailer.
- Translate business requirements into scalable and extensible design.
- Pair with team members on functional and nonfunctional requirements and spread design philosophy and goals across the team.
- Partner with the product management team to define and execute the feature roadmap.
- Continuously improve code quality, product execution and customer delight.
- Communicate, collaborate and work effectively across distributed teams in a global environment.
- Building and managing fully automated build/test/deployment environments.
- An innate desire to deliver and a strong sense of accountability for your work.
- Willingness to learn new languages and methodologies.
What we are looking for
- You write code because you like to. You never stop wanting to get better at it.
- A strong sense of ownership.
- A passion for crafting delightful customer experiences.
- A desire to be part of a team that delivers impactful results every day.
- Rock Solid in two or more languages and frameworks.
- At-least 5+ hands-on experience in designing, developing, testing and deploying applications large scale applications in any language or stack.
- Proficiency in OOP, including design patterns. Experience with functional programming is a plus.
- A commitment to writing understandable, maintainable, and reusable software.
- Experience in software development or a serious open source track record
- Hands-on experience working on one or more front end technologies is a plus.
- Deep knowledge of Linux as a production environment.
- Deep understanding of cloud based architecture patterns.
- Data modelling experience in both Relational and NoSQL databases.
- Ability to understand and implement Continuous Integration and Continuous Delivery.
- Well versed with Lean methodologies, TDD and Test Engineering and Automation.
- Ability to design and implement low latency RESTful services.
- Experience troubleshooting server performance memory issues, GC tuning, resource leaks etc.
- Excellent understanding of interactive application development paradigm, memory management, performance/resource optimizations, database interactions, network programming, concurrency and multithreading, fault tolerance, monitoring, security and operability of systems.
- Continuously refactor applications and architectures to maintain high quality levels.
- Ability to plan, prioritize, estimate and execute releases with a high degree of consistency.
- Ability to scope, review and refine user stories for technical completeness and to alleviate dependency risks.
- Passion for learning new things, solving challenging problems.