Principal Software Engineer
Description

This seasoned software engineer will help Darling Consulting Group (DCG) grow our software and data analytics businesses as well as expand our service offerings to the banking industry. This individual will be part of growing a software engineering team that is expert in developing internally designed software products, and building web applications for the banking industry that are scalable, reliable, and secure. This person should have a strong object-oriented programming background and be energized by the opportunity to work with large data sets, and have appropriate expertise working with them. Having expertise in multiple programming languages, this individual will help align technology architectures to business needs and set coding standards. An individual that is experienced building data intensive systems and working in cloud environments is highly desired.



Responsibilities

  • Develop, design, and build solutions on a platform dedicated to high scale processing of various data sets
  • Set, communicate, and reinforce technical standards
  • Be a willing, capable and empathetic coach and mentor to colleagues and staff of all skill levels
  • Write high performance code that is scalable and maintainable
  • Champion a culture of high quality and quick feature deployment through test driven development
  • Work with the broader engineering/product teams in an Agile/Lean/DevOps environment to build web based distributive systems on cloud platforms 
  • Collaborate with peers and management on improvement ideas and opportunities to improve client experience 
Requirements
  • 10+ years of professional experience in software development with proven experience in continuous delivery
  • 10+ years of professional experience with C#, C++, or similar object-oriented language
  • 10+ years of working with web frameworks and technologies (e.g., Angular, React, .NET ASP, Javascript, Jquery)
  • 7+ years of working knowledge of data structures, algorithm design, problem solving, and complexity analysis
  • 7+ years of experience leading the delivery of large-scale distributed systems
  • Curiosity to constantly relearn/explore new processes/technologies
  • Experience working in a test-driven development environment, including in-depth understanding in design and implementation of functional and non-functional test strategies
  • Experience with or desire to leverage extreme programming methodologies and SOLID principals
  • Experience with low level web architectures including microservices or serverless technology
  • Solid understanding of JSON, web services (REST)
  • Ability to write highly scalable SQL and interact with multiple data system technologies such as NoSQL databases
  • Analyze fault-tolerance and high availability issues, performance and scale challenges, and solve them
  • Ability to lead and manage large technology initiatives
  • Comfortable leading through influence and know what data is needed to drive effective decisions
  • Comfort with cloud platforms such as AWS, Azure, GCP, or Pivotal
  • A great communicator and the ability to energize others


Additional Skills

  • BS/MS in Computer Science or related majors
  • Development experience in Python is a bonus.
  • Experience working in the Banking Industry would be helpful.