About the job
Software Engineer
Company Overview:
Allen Control Systems (ACS) is a pioneering defense startup founded by two former Navy electrical engineers with exceptional expertise in robotics and software development. Our mission is to build an advanced autonomous gun turret that utilizes cutting-edge computer vision and control systems to accurately identify and neutralize small drones and loitering munitions. This innovative initiative presents unique technical challenges, making it an exhilarating environment for seasoned engineers.
At ACS, we cultivate an engineering-centric culture that prioritizes technical excellence and innovation. With our founders' successful exits from two previous ventures totaling $180 million in 2022, we are dedicated to ensuring that the groundbreaking technologies we create will significantly impact the real world.
Position Overview:
We are in search of a highly skilled Software Engineer with strong expertise in C++ or Python programming.
- Design, develop, and maintain high-performance software applications utilizing C++.
- Optimize and enhance existing software for improved efficiency, scalability, and reliability.
- Collaborate with multidisciplinary teams, including mechanical, electrical, computer vision, and software engineers.
- Implement industry best practices in software engineering, including code reviews, unit testing, and comprehensive documentation.
- Debug, troubleshoot, and resolve software defects and performance challenges.
- Utilize modern development tools, version control systems (Git), and CI/CD pipelines.
- Develop algorithms and data structures to tackle complex computational challenges.
- Ensure adherence to security and compliance standards in software development.
What You'll Need:
- Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field.
- Strong proficiency in C++ (C++11/14/17/20) and Python.
- Experience with multi-threading, concurrency, and performance optimization.
- Familiarity with software development methodologies and design patterns.
- Knowledge of system programming, memory management, and debugging tools.
- Experience with version control systems (Git) and agile development methodologies.
- Exceptional problem-solving skills and the ability to thrive in a fast-paced environment.
- Professional experience in software development is preferred.

