As a Software Architect at Bullhorn, you will work closely with product managers, UX designers, and developers to guide the evolution of our software and our teams. You'll be helping the team create a vision for our software and work closely with the development teams to make that vision a reality.
You will help identify, research, and design new solutions to define complex features, breakthrough scalability and performance bottlenecks, and help improve system health.
Why this job is important
- Software architects help ensure that our software and our teams are running at their best by solving key technical challenges and promoting best practices.
- Architects also help our team define practical solutions and best practices and guide the team towards them.
- Architects also mentor and coach engineers to recognize better patterns and see the bigger picture.
As a Software Architect, a typical day might include:
- Collaborating with product managers, UX designers, and engineers to design creative features to advance our platform.
- Identifying solutions to technical team impediments, and finding ways to make our development practice better.
- Defining architectural principles, patterns, and best practices.
- Mentoring and coaching engineers to adhere to those best practices.
This job might be for you if:
- You've earned a Bachelor's Degree or higher in Computer Science or a related field
- You have 7+ years of experience designing and building software for scalable, fault-tolerant distributed systems.
- You have strong experience building Software as a Service (SaaS) products
- You're comfortable crafting data and class models for complex software features
- You're a tech guru with a passion for continuous improvement who's excited by finding better designs for software and data.
- You are comfortable with J2EE, Angular, SQL Databases, and open source technologies
Bonus point for:
- Experience designing and maintaining REST APIs
- Expertise in application containerization (Kubernetes, Docker, etc.)
- Experience with performance monitoring and diagnostic tools (ELK, StatsD, etc.)
- Knowledge in designing database models for transactional and distributed databases
- Expertise in tuning applications and data models for performance
- Understanding of event-driven architectures and best practices