preloader

Liberal Logic Inc. is currently recruiting through referrals. If you are interested in working for us, please contact us through an appropriate Liberal Logic Inc. representative.

careers news

Employment Information

The software development team is the central nervous system of Liberal Logic Inc. While our main business area is the core software for professional video and audio equipment, we also use the knowledge we gain there to work on development in completely different areas. Success in areas where software development is essential depends on the behavior of the software you and your team create. The things we consider important are wide-ranging. The following is a list of these things, but we do not expect you to cover all of them. The reason we have listed so many items here is to minimize the mismatch between expectations and reality in both corporate and individual recruitment, by having you look at the list and understand the direction we are aiming for. Liberal Logic Inc. carries out recruitment through referrals. If you are interested in working for us, please contact us through a person involved with Liberal Logic Inc. The hiring process includes a simple technical test. This technical test is either a technical test that simulates a small-scale software development project that can be completed in a few hours, or a technical test that simulates a small-scale software development project that can be worked on at any time during a one-month period. The salary will be decided after consultation and agreement between both parties, taking into account a variety of factors, including your previous career and the content of your specific development achievements, the results of the technical test conducted during the recruitment process, your approach to engineering and other matters, your philosophy on work, and social and economic conditions.

scholarship-thumb

1. Software Engineer - New Graduate Recruitment (Full-time)

  • Being honest, humble, and not arrogant, being able to work on things with sincerity, not lying to yourself or others, being able to continuously learn on your own
  • Being able to communicate with the team using polite language
  • Ability to design and develop small-scale (>1,000 lines) software using C/C++
  • Bachelor’s degree in computer science, engineering, mathematics, or a scientific field
  • Experience with version control concepts
  • Ability to listen when there are comments on the design or implementation you have done
  • Ability to document the software you have been involved in at a level that users can read and understand, with diagrams
  • Ability to use libraries designed and implemented by third parties
scholarship-thumb

2. Software Engineer - Mid-career (full-time)

  • Being honest, humble, and not arrogant, being able to tackle things with sincerity, not lying to oneself or others, being able to continuously learn on one’s own
  • Being able to communicate with the team using polite language, being able to read the background of customers and markets and make proposals that lead to the discovery and resolution of real issues
  • Being able to continuously work on improving things
  • Ability to design required functions in a primitive manner and implement them faithfully
  • Ability to use appropriate methods to design even when the scale of the design becomes large
  • Ability to understand the difference between interface definitions and implementation details and handle them clearly when designing and implementing
  • Ability to manage all aspects of software engineering and product development independently
  • Ability to design and develop medium-sized (>50,000 lines) software using C/C++
  • Ability to propose ideas for solving user issues
  • Bachelor’s degree in computer science, engineering, mathematics, or a scientific field, or 8+ years of experience developing software in an object-oriented language
  • Experience with version control concepts
  • Be able to listen when there are comments on the design and implementation you have done
  • Be able to write documentation for the software you have been involved in, with diagrams, at a level that users can read and understand
  • Be able to debug by yourself when there are problems with the design you have done
  • Be able to understand technical documents written in English, and be able to write technical
  • Ability to use libraries designed and implemented by third parties
scholarship-thumb

3. Senior Software Engineer - Mid-Career (Full-Time)

  • Being honest, humble, and not arrogant; being able to tackle things with sincerity; not lying to oneself or others; being able to continuously learn on one’s own
  • Being able to communicate with the team using polite language; being able to read the background of customers and markets and make proposals that lead to the discovery and resolution of real issues
  • Being able to continuously work on improving things, and being able to take a creative approach to problem solving
  • Being able to design the required functions in a primitive way and implement them faithfully
  • Being able to illustrate the design you have made in some way, and being able to illustrate the design when given a certain implementation
  • Ability to design using appropriate methods even when the scale of the design becomes large
  • Ability to design objects that handle initialization, use, and destruction based on RAII (Resource Acquisition Is Initialization) strictly
  • Ability to realize a class/object hierarchy with an appropriate logical structure for the task
  • Ability to design a system that keeps the overall structure simple by effectively using concepts such as abstraction and polymorphism
  • Ability to understand the difference between interface definitions and implementation details, and to clearly distinguish between them when designing and implementing
  • Ability to manage all aspects of software engineering and product development independently, and to lead a team when necessary
  • Ability to design and develop large-scale (>200,000 lines) software using C/C++ / Modern C++ design approach / Basic knowledge and practical ability regarding TDD and DDD
  • Experience in fault-tolerant software design / Experience in real-time system design using real-time operating systems
  • Knowledge of SIMD processing such as CUDA and AVX, and the ability to design and implement it, as well as knowledge of distributed processing using threads and the ability to design and implement it
  • Strong skills in debugging, performance optimization, and unit testing
  • Ability to work effectively in a dynamic environment where needs and requirements are constantly changing
  • Ability to work independently or in a team, take initiative, and communicate effectively
  • Ability to deeply understand user issues and find efficient solutions
  • Ability to express your opinions in team collaboration regarding architecture, design, and code reviews
  • Bachelor’s degree in computer science, engineering, mathematics, or science with at least 16 years of software development experience
  • Experience with version control, continuous integration, and continuous delivery concepts
  • Expertise in designing software systems and operating system/kernel schedulers
  • A deep understanding of testing, continuous integration, build, deployment and monitoring
  • Expertise in profiling and improving application performance
  • Technical leadership and continuous improvement
  • Experience developing software for cross-platform users
  • Able to listen when there are comments on the design and implementation you have done
  • Be able to write documentation for the software you have been involved in, at a level that users can read and understand, with diagrams
  • Be able to debug the design you have done yourself if there are any problems
  • Be able to understand technical documents written in English or Japanese
  • Ability to write technical documents or user documentation in English or Japanese
  • Ability to design and implement libraries that can be used by third parties