$53.25 - $73.25/hr
Other
Medical, Dental, Vision, Life, PTO
This job posting has expired and is no longer accepting applications. Check out similar jobs
Job description
Join an innovative and fast-paced team-building software that allows litigation professionals to filter millions of documents down to those most important to their case using advanced techniques and artificial intelligence. From your seat in Downtown Chicago, you'll be developing technology that addresses complex challenges such as data visualization, machine learning, distributed systems, large databases, and large-scale data processing.
We code primarily in Java, React within a Linux environment. If you don't know it all, you won't be alone! We are seeking full-stack generalists that can bring experience and diverse knowledge to our team, rather than hyper-focused specialists. Our hiring staff is not focused on playing "technology experience bingo" but wants to find the best software engineers.
As far as the development process itself, we don't want to just check the boxes to be able to say that we have the most (or even the snazziest) features. Rather, we are thoughtful about our design and focused on ensuring that our clients can use software that is both useful and useable. You won't be buried in a dark corner – you'll have the opportunity to actively shape the software, while working as an integral part of a dynamic team of developers who are focused on writing great code, learning every day, and having a lot of fun.
If you think you'd be the right fit for our team, we'd love to hear from you.
Responsibilities- Participate in the development of new features, expand existing features, add support for new platforms to our existing product, and develop new products.
- Develop and review designs, code, unit tests, system tests, and documentation.
- Collaborate in root cause analysts; diagnose, isolate, and fix software problems.
- Create back end applications using primarily Java.
- Demonstrate your work product to your team.
- Identify and correct issues that impact performance, reliability, and scalability.
- Investigate and develop skills in new technologies.
- Bachelor's degree in Computer Science, Information Systems, Engineering, or equivalent work experience required.
- 3-7+ years' work experience in back-end software engineering required.
- Deep experience programming in Java required.
- Experience working within Agile development methodologies.
- Strong knowledge of Unix/Linux environments.
- Experience creating and consuming REST interfaces.
- Must be able to work on-site in Downtown Chicago
- Experience working with CI/CD
- Virtualization experience (VMWare, AWS, Hyper-V, KVM, Containers)
- Professional experience in a system administration role supporting multiple platforms and applications
- Experience in a scripting language (Python, Ruby, Perl, etc.)
- Experience with containerization and container orchestration frameworks
- Good writing and communication skills
- Understanding of Linux and cloud technologies
- Competitive salary
- Company-contributed health, dental, vision, disability, and life insurance
- Fifteen vacation days
- Work in the heart of Chicago near a plethora of amenities and public transit
- Take advantage of mentoring, career development, and other learning opportunities
- Casual work environment
Frequently asked questions
Q: What skills or qualities help someone succeed as a Java Software Engineer?
A: To succeed as a Java Software Engineer, key technical skills include proficiency in Java programming language, experience with object-oriented design principles, and knowledge of software development frameworks such as Spring or Hibernate. Additionally, strong problem-solving skills, attention to detail, and the ability to collaborate effectively with cross-functional teams are essential soft skills that contribute to success in this role. By combining technical expertise with strong communication and teamwork skills, Java Software Engineers can effectively design, develop, and maintain high-quality software applications, driving career growth and effectiveness in the role.
Q: What is the career path for a Java Software Engineer?
A: A Java Software Engineer's typical career progression involves starting as a Junior Software Engineer, where they focus on coding, testing, and debugging, before advancing to a Mid-Level Software Engineer role, where they take on more complex projects, lead smaller teams, and contribute to architecture decisions. As they gain experience, they can move into Senior Software Engineer positions, where they mentor junior engineers, design and implement large-scale systems, and drive technical innovation. With continued growth, Java Software Engineers can explore leadership roles, such as Technical Lead or Engineering Manager, or transition into specialized areas like DevOps, Cloud Computing, or Artificial Intelligence.