Mesirow Financial Administrative Corp
Senior Software Architect
Mesirow Financial Administrative Corp, Chicago, Illinois, United States, 60290
About UsMesirow 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 RoleAs 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
#J-18808-Ljbffr
The RoleAs 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
#J-18808-Ljbffr