Share this Job

Title:  Sr Software Engineer

Job ID:  1314

Chicago, IL, US

Category:  Information Technology

Donnelley Financial Solutions (DFIN) is a leader in risk and compliance solutions, providing insightful technology, industry expertise and data insights to clients across the globe. We’re here to help you make smarter decisions with insightful technology, industry expertise and data insights at every stage of your business and investment lifecycles. As markets fluctuate, regulations evolve and technology advances, we’re there. And through it all, we deliver confidence with the right solutions in moments that matter. 


Donnelley Financial Solutions (NYSE: DFIN) is seeking a Senior Software Engineer to evolve our Venue Virtual Data Room product into a set of fault tolerant, autonomously scalable, and performant microservices in Azure.  We are seeking passionate software craftspeople to solve complex data storage, access, search, and analytics problems. If you are committed to delivering high quality, maintainable, reliable, performant, and scalable software, this role might be the perfect fit.  Come be part of a growing, innovative team that cares about you and your personal growth and development. This role is available for both our downtown Chicago location or our office located in Downers Grove

  • Take ownership of complex problems and provide solutions with minimal direction.
  • Specify non-functional software requirements and analyze requirements to determine design feasibility within time and cost constraints.
  • Estimate and be accountable to software development timelines. 
  • Design object oriented software using best practice software engineering including separation of concerns, high cohesion, low coupling, abstraction, encapsulation and information hiding, interfaces, and dependency injection. 
  • Implement object oriented software using defensive programming and exception handling, design patterns and object oriented programming (OOP) principles like SOLID.
  • Test software with traceability back to requirements using autonomous frameworks and Continuous Integration.
  • Follow and improve agile software development process and practice.
  • Identify and reduce technical debt.
  • Set an example of software engineering best practice junior engineers can emulate.
  • Deep understanding of and fanatical adherence to best practice software engineering including separation of concerns, high cohesion, low coupling, modularization, encapsulation and information hiding, interfaces, and dependency injection; you can think abstractly and transform your thinking into practical implementation. 
  • Object orientation analysis (OOA) and design (OOD) is part of your daily working agile methodology, including the application of design patterns and object oriented programming (OOP) principles such as SOLID; you actually do class, component, sequence, system, and deployment diagrams.
  • Proven success delivering solutions for different types of problems for fault tolerant, low latency distributed systems, data storage, transformation and access, or text search. 
  • Performance monitoring and scalability is part of your architecture and design work, not an afterthought in implementation. 
  • Excellent interpersonal and teamwork skills 
  • At least 6 years of software engineering experience on complex distributed systems.
  • Fluent in C#/ . NET, Java, Scala, and/or C++, git and branching models like Gitflow.
  • Experience with small teams that move fast.
  • Willing and able to set and meet delivery deadlines. 
  • Expert application of modern automated test frameworks and Continuous Integration.
  • You can go up and down the stack from deep in the infrastructure layer all the way up to the client libraries.
  • API first design building scalable ReSTful APIs, ideally using an IDL like OpenAPI.
  • Bachelor of Science degree in Computer Science, Math, or Computer/Electrical Engineering. 


Preferred Experience and Skills  

  • Relational and non-relational database experience; you've also used a cache like Redis.
  • Knowledge or experience with cloud platforms (Azure or AWS) and infrastructure as code.
  • Understanding or experience with Docker & Kubernetes

It is the policy of Donnelley Financial Solutions to select, place and manage all its employees without discrimination based on race, color, national origin, gender, age, religion, actual or perceived disability, veteran's status, actual or perceived sexual orientation, genetic information or any other protected status. 

If you are a qualified individual with a disability or a disabled veteran, you have the right to request a reasonable accommodation if you are unable or limited in your ability to use or access as a result of your disability. You can request a reasonable accommodation by sending an email to

Nearest Major Market: Chicago

Job Segment: Developer, Computer Science, Cloud, Database, Java, Technology