Logo
Mesirow Financial

Senior Software Architect

Mesirow Financial, Chicago, Illinois, 60290


Description About Us Mesirow is an independent, employee-owned firm founded in 1937. As specialists in investment, risk management, and advisory services, we are committed to helping our institutional, corporate, and individual clients achieve their objectives. Our professionals are inspired by an entrepreneurial desire to develop tailored solutions designed to deliver measurable results. The Role As a Senior Software Architect, you'll be at the forefront of our technological transformation, leading the modernization of our internal application stack. You’ll design and implement scalable, fault-tolerant, and reusable architectures that enable rapid feature development and seamless integration across our platform. This role is crucial in bridging the gap between our legacy mixed-technology environment and a future-ready, unified architecture. The Senior Software Architect will be a visionary, spearheading efforts in re-architecting the application stack with a focus on microservices, promoting reusability, and ensuring scalability across our diverse business units. Key Responsibilities Design and implement robust, scalable software architectures that promote code and data reuse across applications and business units Lead the transition from monolithic applications to a microservices-based architecture, ensuring loose coupling and high cohesion Develop and maintain a comprehensive API strategy, including RESTful and GraphQL APIs Design and implement caching strategies (e.g. Redis) to optimize performance Architect solutions for data consistency and integrity in distributed systems, implementing patterns such as CORS and Event Sourcing Collaborate with cross-functional teams to gather requirements and translate them into technical specifications Mentor software engineers in best practices for scalable, service-oriented architectures Evaluate and recommend new technologies to enhance our technology stack Lead the adoption of container orchestration platforms (e.g., Kubernetes) Implement service discovery, load balancing, and circuit breaker patters Implement event-driven architectures when needed using message queues (e.g., Apache Kafka, RabbitMQ) Required Qualifications Bachelor’s degree in computer science, Software Engineering, or related field 10 years of experience in software development, with at least 5 years in software service architecture and development roles Extensive experience with microservices architecture, domain-driven design, and event-driven architecture patterns In-depth knowledge of distributed systems, API design, cloud computing, and scalability best practices Strong understanding of DevOps practices, CI/CD pipelines, and containerization technologies (Docker, Kubernetes) Experience with cloud platforms (AWS, Azure, or GCP) and their respective services for building scalable, fault-tolerant systems Strong proficiency in C#, Python, and JavaScript, with the ability to work across multiple languages Experience with SQL as well as both relational and NoSQL databases, including working knowledge of ORM technologies Preferred Qualifications Experience in implementing observability solutions (logging, monitoring, and tracing) for microservice architectures Experience with service mesh technologies (e.g., Istio, Linkerd) for managing microservice communication Knowledge of serverless architectures and Function-as-a-Service (FaaS) platforms Exposure to the finance industry or with financial software systems Familiarity with Databricks and big data processing technologies Certifications in relevant cloud platforms (AWS, Azure, or GCP) Key Competencies Strategic thinking and ability to align technical solutions with business and firm objectives Excellent communication skills, able to explain complex technical concepts to both technical and non-technical stakeholders Strong leadership and mentoring abilities Analytical and problem-solving skills with a focus on scalable, efficient solutions Adaptability and eagerness to learn new technologies and methodologies Attention to detail and commitment to code quality and best practices Ability to balance technical debt reduction with feature delivery and business priorities What We Offer Opportunity to lead transformative projects in a dynamic financial technology environment Collaborative and innovative work culture that values continuous learning and growth Competitive salary and benefits package Hybrid work arrangements Regular opportunities for professional development and training Join us in reshaping the future of financial technology. If you're passionate about creating scalable, efficient, and innovative software architectures, we want to hear from you EOE