Principal Software Engineer

 

Description:

Responsibilities:

  • Design and implement concise, modular, cohesive, frontend and backend services in a distributed system context that are resilient, efficient, and reliable.
  • Ensure automated tests are highly effective in terms of software quality, refactor flexibility, and integration/delivery speed.
  • Concurrent and asynchronous software design/development.
  • Advanced asynchronous and resilient network communications design and implementation.
  • Software development on complex, but potentially irreducible algorithms or combinatorials.
  • Find ways to reduce/decompose complex software components along appropriate boundaries.
  • When apparently irreducible functionality is encountered and resists beneficial decomposition, find ways to simplify through quantization.

Responsibilities (cont.):

  • Extensive usage of all aspects of observability systems from experienced instrumentation of code to well-designed queries, dashboards, and alerts.
  • Data driven optimization of latency, compute, memory, storage, and network traffic.
  • Maintain awareness of production system performance, errors, and code usage.
  • Communicate with clarity with diagrams, documentation, and presentations to other developers, dev teams, SREs, and management.
  • Optimize build, deployment, and IaC provisioning pipelines.
  • Rigorous analysis of escaped defects to determine corrective actions with depth of insight.
  • Communicate clearly via software architecture, embedded docs, or o11y.
  • Design and develop defensively to maintain or increase security going beyond OWASP and zero trust patterns by truly understanding the area of the system being worked on.
  • Rigorous and proficient review and clear feedback on pull requests by team members.
  • Keep up with relevant technologies, techniques, tools, and patterns.
  • Ensure the software is as simple as possible, but not simpler.
  • Build software with people. Product managers, other developers, SREs, junior engineers, senior engineers, and offshore. Construct software that matters!
  • Constantly address technical debt. Shine a light on it, even when it hurts.
  • Participate in the planning of technical engineering and product roadmaps.
  • Plan, lead, or manage projects when called upon to do so while remaining hands on.

Qualifications:

  • BS in Computer Science or equivalent work experience.
  • Commitment to your software development, the products you work on, and the firm.
  • 6-15+ years of experience working in full stack distributed systems.
  • Experience meeting secure coding standards and willing to participate in financial systems security practices.
  • Ability to explain complex topics to managers/directors, program/product managers

Organization Donnelley Financial Solutions
Industry IT / Telecom / Software Jobs
Occupational Category Principal Software Engineer
Job Location New York,USA
Shift Type Morning
Job Type Full Time
Gender No Preference
Career Level Experienced Professional
Experience 6 Years
Posted at 2024-10-06 11:59 am
Expires on 2025-01-23