Job Description
Lead Software Engineer
Philadelphia, PA
Full time direct hire
Full benefits
Relocation package
US Citizen only
Client is currently seeking a Software Engineering Lead for our Camden, NJ location.
Responsibilities include leading teams through all phases of the software development life cycle. This is a hands-on role and includes the translation of requirements into working and maintainable solutions for our Solution Centers. The selected candidate will apply technical proficiency across various stages of our SDLC, gather requirements and work closely with stakeholders to prioritize and scope tasks. The selected candidate will be working as a key team member on a Scrum team and will be instrumental in setting our direction and strategy for product and infrastructure development.
Essential Functions
Developing and tracking software development schedule, assigning tasking, managing cost accounts
Interfacing and coordinating with all engineering development disciplines, project engineering and program management
Oversee formal design and test reviews, prepare and present technical briefings, report project status
Guide team members on the application of computer science, engineering, and mathematical analysis concepts and principles in the development of software for the target hardware
Hands-on leadership in the development and evaluation of interfaces between hardware and software, and operational performance requirements and design of the overall system
Lead and contribute to all phases of the software development life cycle, including requirements analysis, design, implementation, integration, and formal test
Develop software test plans and procedures, and other relevant technical documentation
Utilize modeling tools and equipment to establish operating data, conduct experimental tests, prototype, and evaluate results
Participate in peer reviews, identify, track and repair defects
Utilize a variety of software languages and tools (e.g., Java, Python, Angular, C++, Go) on Windows, Linux, mobile platforms, and embedded real time operating systems
Qualifications
Bachelor's or Master's degree in Computer Science, or related field and 10+ years of Software Engineering experience
10+ years of experience developing software for desktop, mobile, and/or web applications with an object-oriented programming language
2+ years of demonstrated ability leading small to medium sized software development teams through all phases of the software development lifecycle
Excellent oral and written communication skills
Preferred Additional Skills
Object-oriented design and implementation experience, with exposure to software modeling and UML
Java development experience
Knowledge of network architectures and protocols
Experience developing RESTful web APIs
Experience with technology similar to:
Spring Boot, Docker, Kubernetes, OpenShift, Javascript, jQuery, Angular JS, PostgreSQL, Jenkins, Wireshark, Junit, SoapUI, Selenium, Cucumber, Git, JBoss web server, Linux, microservice development, CSS, MyBatis, Maven
Experience debugging web applications
Experience with static code analysis, code coverage tools, and automated test frameworks
RF knowledge (including SW Defined Radio)
Ability to read and debug C++ applications