Senior Software Developer
Summary of the Position
As a Senior Software Developer you will design, develop, test, and support software solutions as a part of the Mandli Communications, Inc. Technology Team. You will work closely with team leads and product specialists to refine customer requirements and implement functionality for software applications that help our customers gather, process, and analyze transportation infrastructure information. You will leverage a passion for learning new and exciting technologies, and an ability to adapt to different technical environments to bring cutting edge solutions to our customers.
- Designing, coding, testing, and supporting applications in Java, C++ and several other languages
- Working independently to identify and solve complex problems
- Understanding and following best practices and principles of Object Oriented Programming
- Writing software documentation like technical specifications, operation procedures, software and system architecture drawings
- Implementing processes to improve software and increase code quality
- Working with senior engineers and product specialists to gather and understand complex software requirements
- Working within different development stages to write and automate tests with code
- Maintaining a knowledge of engineering fundamentals, and the desire to work on the cutting edge
- Leading in a team-based, agile development environment
- Perform additional duties as assigned
To perform this job successfully, an individual must be able to perform each essential duty satisfactorily. The requirements listed below are representative of the knowledge, skill, and/or ability required. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
- Bachelor’s degree in Computer Science or related Engineering Field
- 4+ years of Experience programming in a Full Stack development environment
- Strong background in developing software in Java
- Web development experience
- Experience with docker based deployments
- Experience with Transitioning to Micro Services Architecture
- Solid understanding of Object Oriented Programming design and development
- Excellent communication, documentation and organizational skills
- Experience working with Databases using MySQL, Oracle
- Contributor in software architecture design sessions
- Experience building, maintaining and running automated unit testing
- Familiarity with DevOps practices
- Experience using Maven
- Familiarity using Continuous Integration systems
- Familiarity with Source Control Management
- Familiarity with Spring or Inversion of Control
- Experience or desire for working in a team environment utilizing AGILE methodologies
- Experience with GIS systems and software
- Experience seeing through a project from conception to finished product
- Experience as a lead in software architecture
- Must be legally authorized to work in the United States
- Must not require future company sponsorship
- Willing to undergo a pre-employment drug test
This position does not require any set amount of travel. Travel may be required for specific projects on a case by case basis.
Physical and Environmental Demands of the Position
The physical demands described here are representative of those that must be met by an employee to successfully perform the essential functions of this job. Reasonable accommodations may be made to enable individuals with disabilities to perform the essential functions.
While performing the duties of this job, the employee is regularly required to talk, hear, use hands, and reach with hands and arms. Vision requirements include the ability to have clear vision at 20 inches or less to view and effectively utilize general office equipment and computers.
The information contained in this job description is intended to describe the essential job functions required of those assigned to this job. It is not intended to be an exhaustive list of all accountabilities, activities, and knowledge needed to perform the job. Please note that job functions are reviewed periodically and are subject to change based upon company business need.