Software Engineer (Android) - Digital
Company: Costco Wholesale
Location: Plano
Posted on: February 1, 2025
Job Description:
Costco IT is responsible for the technical future of Costco
Wholesale, the third largest retailer in the world with wholesale
operations in fourteen countries. Despite our size and explosive
international expansion, we continue to provide a family, employee
centric atmosphere in which our employees thrive and succeed. As
proof, Costco ranks seventh in Forbes "World's Best Employers".This
is an environment unlike anything in the high-tech world and the
secret of Costco's success is its culture. The value Costco puts on
its employees is well documented in articles from a variety of
publishers including Bloomberg and Forbes. Our employees and our
members come FIRST. Costco is well known for its generosity and
community service and has won many awards for its philanthropy. The
company joins with its employees to take an active role in
volunteering by sponsoring many opportunities to help others.Come
join Costco Digital - part of the Costco Wholesale IT family.
Costco Digital is a dynamic, fast-paced environment, working
through exciting transformation efforts. We are building the next
generation digital retail environment where you will be surrounded
by dedicated and highly professional employees. We are embarking on
a large digital transformation and need team members like you to
help us grow to the next level.Our Digital team is transforming how
we deliver solutions and interact with our members across our
Mobile, Commerce and Order Management platforms. We have a culture
of improvement & learning with a start up mentality and a customer
centric approach for our Costco members and our employees. We are
looking for talented individuals to join our team and pursue bold
ideas and explore growth opportunities.Software Engineers perform
development work across the technology stack (both
front-end/back-end expertise). They are versatile in how they can
add value, demonstrating the ability to manage the completion of
projects that involve databases, backend services, or the
development of front end applications. They should be able to
demonstrate a strong understanding of emerging technologies to
support the development of new solutions.Software Engineers
understand the full technology stack and underlying applications,
services, and databases in order to ensure optimal performance.GDX
Mobile is seeking an experienced and system-oriented Software
Engineer to join our team of technology professionals. The Software
Engineer will lead the design and development of our Android mobile
applications. This role will involve creating and maintaining the
functionality of our Android apps while ensuring they align with
our business requirements and user expectations.In this position,
the Software Engineer will play a critical role in defining the
technical roadmap, ensuring architectural integrity, and guiding
the development team to deliver high-quality software solutions.
They will interact with senior business and technology leaders to
understand their needs, vendors, and partners to influence
technology roadmaps to benefit Costco. Equally important, they will
teach, mentor, and grow other domain experts within the
organization.ROLE
- Develops the conceptual systems architecture design and the
supporting technologies needed to enable new and/or enhanced
functionality within a given product/application, applying
principles that promote availability, reusability,
interoperability, and security into the design framework.
- Supports release planning activities in conjunction with
Product Owners and teams.
- Identifies high level requirements to support the definition
and refinement of a robust testing strategy.
- Supports the Product Owner with the identification and
definition of enablers / work items to support the architectural
runway of a given product/application.
- Defines the non-functional requirements (e.g., performance,
security, resiliency, etc.) which support the development of epics
and user stories aligned to a value stream.
- Identifies technical dependencies across several product /
application teams to support the implementation of new or enhanced
functionality.
- Performs development, optimization, and automation activities
to support the implementation of a product/application.
- Develops and implements front-end architecture to support user
interface concepts.
- Increases proficiency and understanding of relational and
non-relational databases, distributed application architectures,
user interfaces and user experience, quality assurance, security
concerns, and business value creation.
- Drives engineering best practices to deliver higher quality and
scalable solutions.
- Provides the team with the development strategy, solution
recommendations, and estimates for a given
product/application.
- Participates in scrum ceremonies (sprint planning,
retrospective, showcases/demos, stand-ups, backlog refinement,
etc.).
- Creates and executes unit tests which validate the code changes
made to support the implementation of a user story.
- Uses test driven development (TDD) practices to assist with the
detection/recognition of software defects early in the development
process.
- Estimates, plans, and manages all implementation tasks and
reports on development progress.
- Designs, builds, debugs, optimizes, and implements solutions in
approved tool sets and databases.
- Develops high quality, efficient, and fault tolerant
software.
- Supports, extends, and builds automated CI and CD
pipelines.
- Designs and delivers DevSecOps automation for app deployment
and testing.
- Uses APM/monitoring tools such as Dynatrace/Splunk and browser
tools to perform request purepath/waterfall analysis to identify
bottlenecks and suggest improvements.
- Participates in the development and documentation of department
standards and best practices, and mentors other engineers.
- Identifies deficiencies within a product/application's code
base and identifies opportunities to improve overall code
quality.
- Collaborates with team members (e.g., Systems Architects,
Systems Analysts) to define project specifications and release
documentation for all phases of the product development cycle from
product definition to design, through implementation.
- Conducts peer code reviews for the software changes made by
other engineers within a team.
- Defines the overall system architecture, including component
structure, module interactions, and integration points.
- Designs scalable, reliable, and high-performance
Java/Kotlin-based solutions that align with industry best practices
and architectural principles.
- Evaluates and selects appropriate frameworks, libraries, and
technologies to support the architecture and meet project
requirements.
- Conducts architectural reviews and provides guidance on design
patterns, coding standards, and development methodologies.
- Leads the development team in implementing the defined
architectural vision and technical strategies.
- Provides technical expertise and hands-on coding when necessary
to support the team in complex development tasks.
- Ensures adherence to coding standards, code quality, and best
practices throughout the development lifecycle.
- Collaborates with other architects and technical leads to
ensure consistency and compatibility across systems and
projects.
- Troubleshoots and resolves complex technical issues; provides
guidance and support to the development team as needed.
- Architects and designs cutting-edge Android applications that
meet the business requirements while adhering to best practices,
performance, and scalability standards.
- Collaborates with backend and frontend architects to design
end-to-end solutions that seamlessly integrate with the Android
platform.
- Collaborates and works effectively in agile environments with
multifunctional teams, comprising of product managers, UX/UI
designers, and software engineers, to establish technical
requirements and ensure the successful delivery of projects.
- Provides technical leadership and mentorship to the Android
development team, fostering a culture of excellence, innovation,
and continuous improvement.
- Develops and maintains technical documentation, diagrams, and
guidelines for the Android development team to ensure consistent
and clear communication.
- Performs comprehensive code reviews; ensures strict compliance
with coding standards and industry best practices to guarantee high
code quality and reliability.
- Identifies potential risks and technical challenges early in
the development lifecycle and devises effective solutions to
address them.
- Stays updated with the latest trends and advancements in
Android development; actively proposes and integrates new
technologies and frameworks when they align with project
requirements and goals.
- Conducts thorough performance analysis of existing Android
applications; identifies areas for improvement and implements
effective performance enhancements.REQUIRED
- Minimum 10 years' experience in Android development or related
positions.
- Extensive experience and expertise in programming languages
(i.e. Java, Kotlin for Android app development); demonstrate a
strong command of the mobile development, which includes Android
Software Development Kit (SDK).
- Proficient in applying various design patterns to create
scalable, maintainable, and efficient software solutions, ensuring
code reusability and flexibility.
- Extensive experience in crafting comprehensive solution
architectures that address complex business challenges and align
with the organization's strategic goals.
- Strong understanding of creating and interpreting sequence,
class, and use case diagrams to visualize the dynamic behavior of
software systems, and illustrate the interactions between users and
the software system, identifying functional requirements.
- Skilled in writing and executing tests to ensure app
functionality and reliability.
- Proficient in identifying and resolving bugs and issues in
Android applications through effective techniques.
- Proficient in using version control systems for efficient code
management and collaboration.
- Experience with a mobile development platform for integrating
services in Android apps.
- Strong command of the Android Software Development Kit for
developing feature-rich Android applications.
- Proficient in using a modern programming language for Android
development to write concise and expressive code.
- Knowledge of databases for managing local data storage in
Android applications.
- Familiarity with integrating external services and data into
Android applications.
- Skilled in optimizing the performance of Android applications
for enhanced user experience.
- Understanding and implementation of guidelines for creating
visually appealing and intuitive Android app interfaces.
- Strong ability to convey ideas, information, and feedback
effectively to individuals and teams.
- Demonstrated skills in guiding and motivating others towards
common goals and fostering a positive work environment.
- Proficient in reaching mutually beneficial agreements and
resolving conflicts through effective negotiation techniques.
- Excellent organizational skills to prioritize tasks, meet
deadlines, and optimize productivity.
- Capable of building and maintaining positive relationships with
colleagues, clients, and stakeholders.
- Analytical mindset to assess situations, identify challenges,
and develop innovative solutions.
- Collaborative approach to work well in diverse teams, valuing
each member's contributions.
- Flexibility to thrive in dynamic environments and embrace
changes with a positive attitude.
- Proficient in analyzing complex issues and devising practical
and efficient solutions.Recommended
- Bachelor's degree or equivalent in Computer Science or a
STEM-related field (Science, Technology, Engineering or
Mathematics) from a recognized institution or its foreign
equivalent.
- 3 years' experience:
- Integrating an application with other applications using
SOA/REST web services.
- In application development in Java, JavaScript, .Net.
- With a working knowledge of databases (DB2, SQL Server
etc.).
- Programming experience with related technology, such as XML,
Java, JavaScript frameworks, SQL queries, and database schema
design.Required Documents
- Cover Letter
- ResumeCalifornia applicants, please click to review the Costco
Applicant Privacy Notice.Pay Ranges:Level SR. - $150,000 -
$190,000, Bonus and Restricted Stock Unit (RSU) eligibleLevel Staff
- $180,000 - $225,000, Bonus and Restricted Stock Unit (RSU)
eligibleWe offer a comprehensive package of benefits including paid
time off, health benefits - medical/dental/vision/hearing
aid/pharmacy/behavioral health/employee assistance, health care
reimbursement account, dependent care assistance plan, short-term
disability and long-term disability insurance, AD&D insurance,
life insurance, 401(k), stock purchase plan to eligible
employees.Costco is committed to a diverse and inclusive workplace.
Costco is an equal opportunity employer. Qualified applicants will
receive consideration for employment without regard of race,
national origin, gender, gender identity, sexual orientation,
protected veteran status, disability, age, or any other legally
protected status. If you need assistance and/or a reasonable
accommodation due to a disability during the application or the
recruiting process, please send a request to
IT-Recruiting@costco.comIf hired, you will be required to provide
proof of authorization to work in the United States.
#J-18808-Ljbffr
Keywords: Costco Wholesale, North Richland Hills , Software Engineer (Android) - Digital, IT / Software / Systems , Plano, Texas
Didn't find what you're looking for? Search again!
Loading more jobs...