cFocus Software is seeking an experienced
Applications Software Developer to develop, create, and modify computer applications software to meet organizational needs. With a focus on optimizing operational efficiency, this position will involve analyzing user requirements, designing software solutions, and potentially overseeing the development and coordination of databases. The ideal candidate will have 8+ years of experience in software development, including designing and customizing software for client use and working as part of a team to develop robust, secure applications.
Key Responsibilities:
- Software Development:
- Develop, create, and modify computer applications software, including general applications and specialized utility programs.
- Analyze user needs and develop software solutions that optimize operational efficiency and meet business objectives.
- Design, develop, and test software applications according to requirements, ensuring functionality, performance, and security.
- Collaborate with other software developers, system architects, and stakeholders to ensure that software solutions align with business and security requirements.
- Database Design and Integration:
- Analyze and design databases within specific application areas, ensuring data consistency, integrity, and security.
- Coordinate and collaborate with database administrators and developers to design and implement efficient, scalable, and secure database solutions.
- Integrate databases with applications to ensure smooth and effective data flow and utilization.
- Customization and Optimization:
- Customize and modify existing software to enhance functionality, resolve issues, or meet changing requirements.
- Optimize application performance, ensuring that software runs efficiently on all targeted systems and meets necessary load and scalability requirements.
- Troubleshoot and resolve technical issues in both new and existing applications, ensuring minimal system downtime.
- Leadership and Collaboration:
- Work as part of a team or independently to design and develop software applications according to project requirements.
- Supervise and guide junior developers or computer programmers, providing mentorship, support, and code reviews to ensure high-quality deliverables.
- Collaborate with cross-functional teams, including business analysts, system architects, and project managers, to design software solutions that support the organization’s objectives.
- Documentation and Reporting:
- Create and maintain clear, detailed documentation for software applications, including system design specifications, user guides, and technical documentation.
- Report progress on software development projects to management and stakeholders, ensuring that deadlines, quality, and project goals are met.
- Security and Compliance:
- Implement security measures and best practices in the development and deployment of software applications to protect against cyber threats and data breaches.
- Ensure that software solutions comply with federal regulations, organizational standards, and DHS cybersecurity protocols.
Qualifications:
- Education:
- Bachelor’s degree in Computer Science, Software Engineering, Information Technology, or a related field (Master’s preferred).
- Professional certifications in software development, programming languages, or relevant technologies are a plus.
- Experience:
- 8+ years of experience in software development, including designing, creating, and modifying applications software for complex systems.
- Proven experience in analyzing user needs and developing software solutions to optimize operational efficiency.
- Strong experience in database design and integration, including working with relational and non-relational databases.
- Experience in full software development life cycle (SDLC), including requirements gathering, design, testing, deployment, and maintenance.
- Skills & Competencies:
- Expertise in programming languages such as Java, C++, Python, or similar languages.
- Experience with database management systems, such as SQL, Oracle, or NoSQL databases.
- Proficiency in application design, development frameworks, and tools (e.g., Angular, React, .NET).
- Familiarity with Agile or DevOps methodologies and best practices.
- Ability to collaborate with cross-functional teams and lead projects from design to implementation.
- Strong problem-solving skills with the ability to troubleshoot and optimize complex software applications.
- Certifications (Preferred):
- Certifications in specific programming languages, database technologies, or software development methodologies (e.g., Java, SQL, Agile, etc.).
- Security certifications (e.g., CISSP, Security+) are a plus.
Security Clearance:
Due to the sensitive nature of this role, candidates must possess or be able to obtain the required security clearance.