About the Role
As Senior Software Engineer, you will collaborate closely with design, product and engineering experts to tackle real-world challenges and deliver innovative solutions that elevate Kohl’s retail offerings.
What You’ll Do
Lead the development of high-quality applications that are robust, observable and measurable using extreme programming (XP) practices and a user-centric approach
Participate in the entire application lifecycle in collaboration with designers, product managers, and other engineers on the product team
Leverage critical thinking, experimentation, data, and industry best practices to implement desired business outcomes
Facilitate group discussions and team ceremonies and develop a shared context
Give and receive feedback that’s empathetic, actionable and specific
Practice emergent architecture with sane defaults and build software that is easy to use and easy to modify
Establish and lead product engineering and software standards
Ideate a new product from a user perspective, starting with one or more problem spaces and ending with a stack-ranked list of feasible solutions to test
Research and stay up to date on tech market trends and practices
Lead technical initiatives not only on the team but also across the department
Additional tasks may be assigned
Addendum
SENIOR BACKEND SOFTWARE ENGINEER
Expert in Java and JEE development, Spring Boot, Spring MVC, Spring Batch, Spring Security
Experience with build management tools such as Gradle or Maven
Demonstrate understanding of source control systems such as GIT
Database design and implementation experience in either SQL or NoSQL databases
Experience designing and implementing distributed caching technologies such as Redis
Experience driving requirements refinement, planning, estimation, development, testing, and deployment
SENIOR BIG DATA SOFTWARE ENGINEER
Experience in SQL and NOSQL data modeling for cloud data lakes.
Understanding of data as a product or data mesh topologies using cloud data lakes like Google Big Query, Amazon Redshift or Snowflake
Experience building and performance tuning ETL pipelines using Technologies like Apache Airflow, spark, python/scala.
Preferred experience working with GCP data stack and infrastructure, including GCS, Dataproc, Pubsub, IAM, VPC Network.
Knowledge of real-time streaming technologies like Kafkaconnect, and Flume for messaging and streaming pipelines.
Experience handling PCI/PII data adhering to compliance standards like GDPR, PCI DSS, SOX, CCPA
Experience in designing and integrating GenAI tools and technologies like OpenAI, Gemini and Llama LLMs
SENIOR UI SOFTWARE ENGINEER
A passion for stellar user experience and design
Proficient in NodeJS and ECMAScript standards
Deep understanding of CSS patterns and HTML
Understanding of responsive design
Proficient in one or more modern UI frameworks like React, Angular, Ember, or Vue.js
Consume reusable component libraries
Can compose CSS on the fly
Create and evangelize reusable user interface component libraries
Contribute to open-source front-end libraries
Enforce style guide standards through code reviews
Participate early and actively in the product design process
SENIOR SOFTWARE ENGINEER (ANDROID)
Knowledge of Java and Kotlin for Android
Experience working with notifications and background tasks in apps
Collaborate with iOS, Android, and Server engineers to ship features
Experience with making REST calls over the network
Experience with JavaScript, either in a browser or server-side environment such as NodeJS, React
A deep understanding of design patterns and experience working in a layered architecture (MVVM, MVP etc.)
Strong understanding and experience with Test frameworks
Espresso , UIAutomator
SENIOR SOFTWARE ENGINEER (iOS)
Experience building UI/UX with the use of Storyboards and Nibs/Xibs, UIKit & Auto Layout
Experience with making REST calls over the network
Comfortable working with Xcode, Interface Builder, Objective-C/C++ and Swift
Collaborate with iOS, Android, and Server engineers to ship features
Experience with JavaScript, either in a browser or server-side environment such as NodeJS, React
Knowledge of the roles that tools such as clang, swiftc, ld, actool, ibtool, codesign play in the process of generating build/test artifacts
A deep understanding of design patterns and experience working in a layered architecture (VIPER, MVVM etc.)
SENIOR SaaS SOFTWARE ENGINEER
Experience with integration process optimizations
Building and maintaining long-lasting vendor relationships
Hybrid Cloud Architecture Experience
Experience with integration platforms or frameworks
Experience integrating with large SaaS systems
Experience migrating on-prem systems to cloud solutions
Experience designing integration frameworks
Experience conducting vendor engagements
Experience developing integration testing strategies
SENIOR APP MODERNIZATION SOFTWARE ENGINEER
Expert knowledge of application design patterns, event-driven architecture, database schemas, and testing strategies
Expert knowledge and experience with continuous integration, continuous deployment, and test driven development
Expert in Spring Boot, Kotlin, and Java
Expert in frontend development and frameworks ReactJS, NextJS
Expert in MS SQL Server and PostgreSQL
Proven experience with containerization technologies such as Docker and orchestration platforms like Kubernetes
Proven experience with large scale application troubleshooting and performance tuning
Proven experience in large scale migrations - Kafka, Debezium, and Postgres Connector
Experience in Android and .NET
What Skills You Have
Required
4+ years of experience in software development
Understanding of application design patterns, event-driven architecture, database, schemas and testing strategies
In-depth knowledge and experience with continuous integration, continuous deployment and test-driven development
Preferred
Bachelor's Degree or equivalent in MIS, Computer Science or related field
Experience with large-scale application troubleshooting and performance tuning
Exposure working with major cloud platforms (GCP, AWS, or Azure)
Familiarity and experience with XP (Extreme Programming)