Summary of the Job:
CareerBuilder connects people with the right jobs at leading companies through the most innovative recruitment technology platform in the industry. We help millions of job seekers per month improve their lives by finding the right job and gaining the career insights needed to take the next step in their careers.
CareerBuilder is seeking a Software Engineer Level 3 in the Core Search Team to help us massively scale and improve our Search Infrastructure to provide fast and relevant search results from a corpus that has over a billion documents spread across hundreds of servers. Core Search provides the foundation layer for all types of searches implemented across CareerBuilder products.
In this role, you will be part of a team of talented engineers that are responsible for the Search Infrastructure (DevOps) as well as developing the Search Relevancy feature of the Core Search Engine. You will also work with data scientists and product owners as part of the larger Data team. The Core Search team uses a wide range of modern technologies and languages. To name a few
- Programming Languages: Scala, Java, .NET (C#)
- Apache Solr
- Amazon Web Services (AWS)
- RESTful Web Services: Play Framework, .NET MVC
- MySQL, Microsoft SQL
- Apache Spark
- Docker, Kubernetes
In addition to the above, you will learn to work with different sets of a lot of tools such as Scalyr, Jenkins, New Relic, Ruby/Chef, EC2, EMR, Kinesis, Lambda, CloudFormation, etc.,
- Support new feature requests and assist in managing technical debt in an Agile/SCRUM environment. Work in rapid development cycles to help realize business value.
- Collaborate closely with engineering peers and consumers of Core Search to deliver robust and scalable solutions.
- Own and monitor the reliability/performance of Core Search at a massive scale.
- Contribute to a culture of learning, collaboration, and innovation; we expect you to communicate effectively by contributing/reviewing pull requests, participating in design/architectural meetings, and working with business stakeholders.
- Provide highly visible service-related guidance and architectural support to engineering peers locally and around the world.
- Upskill and develop your engineering team.
- Constantly learn and stay current with industry trends/patterns.
Required Knowledge and Skills:
We are looking for a passionate, highly motivated, detail-oriented, and self-directed Software Engineer that loves working with technology and sees this as a long-term profession, not just another job. Ideally, the candidate is an advanced Scala or Java backend developer. The candidate should have a deep understanding of object-oriented programming principles, object-oriented analysis and design techniques, good SQL skills, and excellent problem-solving skills working with web APIs.
The candidate is expected to thrive in an Agile environment with daily scrum meetings, short sprint cycles, and multiple code deployments to production every week.
Excellent team and communication skills are a must.
- Functional programming experience
- Experience building CI/CD pipelines and managing the deployment cycle
- Experience with search technologies such as Solr, Elasticsearch, or Lucene is a plus
- Infrastructure DevOps Automation using tools like Ansible, Chef, etc., is a plus
- Deep understanding of Information Retrieval concepts is a plus
This role does not have supervisory responsibilities
BS in Computer Science or a related field or equivalent work experience. Demonstrable knowledge of Data Structures, Algorithms is a must.
Minimum Years of Experience:
- Frequent phone and computer use
- Creating written communications
- Able to sit/stand at a desk
- Able to bend, sit, stand, lift boxes or equipment (between 0-15 lbs)
- Able to travel occasionally both domestically and internationally