Senior Software Engineer- Customer Communication

DICK'S Sporting Goods - Coraopolis, PA (29 days ago)3.5


The Application Developer is responsible for joining a product team and contributing to the software design, software development, and overall product lifecycle for a product that our users love. The engineering process is highly collaborative. Application Developers are expected to pair on a daily basis as they work through user stories and support products as they evolve. In addition, Application Developers may be involved in product configuration, performance tuning and testing as well as production monitoring. As an Application Developer, you will be part of a team with more experienced engineers to help build and grow your skills while you create, support, and deploy production applications.

Qualifications

Delivery & Execution:
  • Collaborates and pairs with other product team members (UX, engineering, and product management) to create secure, reliable, scalable software solutions
  • Works with Product Team to ensure user stories that are developer-ready, easy to understand, and testable
  • Writes custom code or scripts to automate infrastructure, monitoring services, and test cases
  • Writes custom code or scripts to do “destructive testing” to ensure adequate resiliency in production
  • Configures commercial off the shelf solutions to align with evolving business needs
  • Creates meaningful dashboards, logging, alerting, and responses to ensure that issues are captured and addressed proactively
Support & Enablement:
  • Fields questions from other product teams or support teams
  • Monitors tools and participates in conversations to encourage collaboration across product teams
  • Provides application support for software running in production
  • Proactively monitors production Service Level Objectives for products
  • Proactively reviews the Performance and Capacity of all aspects of production: code, infrastructure, data, and message processing
Learning:
  • Participates in learning activities around modern software design and development core practices (communities of practice)
  • Proactively views articles, tutorials, and videos to learn about new technologies and best practices being used within other technology organizations
  • Reviews and discusses code from more senior engineers to understand best practices and design patterns
  • Increases business acumen by learning about other parts of the business
Additional Skills:
  • C# / .Net Based Development / Visual Studio
  • Exposure to query optimization and troubleshooting
  • Exposure to REST and effective web service design desired
  • Experience with Integration technologies and middleware platforms (ESB, API gateway, etc.)
  • Experience in writing SQL queries against a relational database.
  • Experience in a front-end technology and framework such as JavaScript, AngularJS desired but not required.
  • Experience with Agile Development and knowledge on Agile Deployment tools and versioning using Git or similar tools
  • Exposure to CRM, Marketing, Analytics Domain
  • Exposure to Pivotal Tracker, JIRA, or other PLM tools such as TFS.
  • Manages Ambiguity: Operating effectively, even when things are not certain or the way forward is not clear
  • Nimble Learning: Actively learning through experimentation when tackling new problems, using both successes and failures as learning fodder
  • Self-Development: Actively seeking new ways to grow and be challenged using both formal and informal development channels
  • Situational Adaptability: Adapting approach and demeanor in real time to match the shifting demands of different situations
  • Exposure to destructive testing methodologies, behavioral testing and tools
  • Exposure to production systems design including High Availability, Disaster Recovery, Performance, Efficiency, and Security
Bachelor's Degree

3-5 years Experience