Software Developer
SRNL's Software and Application group is seeking an experienced Software Developer to work on new and existing software applications.
The Senior Software Developer shall be responsible for the design, development, testing, and management of various application development projects in support of SNRL. The selected candidate in this role will be considered a subject matter expert (SME) and will be providing creative solutions to often non-routine and unstructured assignments.
This includes the programmatic integration of third-party components, the introduction of new custom capabilities, testing and deploying programs and applications, troubleshooting, debugging, maintaining and modification of existing code, process improvement recommendation, data management and pipelines, and automation of operations and maintenance tasks. SCRUM methodology and JIRA experience.
Duties include technical project milestone reviews, developing technical documentation to guide future software development projects, code architecture sessions, resource estimation, quality assurance, life cycle management, and development best practices knowledge transfer. Adept at alternating between coding, debugging, and design.
- Sound technical knowledge base of standard concepts, principles, and techniques with the ability to apply formal training.
- Desire to look to the future and develop technology roadmaps
- Solid problem-solving skills.
- Considered an expert programmer and designer and solves complex problems.
- Ability to mentor junior software developers.
- Designing or supporting data pipelines and automated data workflows.
- Integrating data from multiple relational databases and external sources.
- Relational databases such as Microsoft SQL Server, MySQL, Oracle, or PostgreSQL.
- Strong communication skills (written and oral) to foster collaborative and productive relationships within a team of engineers.
- Explains complex information to others in straightforward situations.
- Knowledge and experience in a combination of the following:
- Linux
- ITIL
- Leading software development teams
- Full-stack development
- Software development lifecycle
- Application architecture
- Web application technologies
- Application Programming Interface (API) development
- Data analysis
- GIT Administration
- Azure Devops development,
- C++, C #, Java, Python, Ruby, SharePoint/Power Platforms, PowerBI, SQL, React
- Agile or Scrum framework, version control.
Minimum Qualifications:
Bachelor's degree in a related discipline plus 8+ years of relevant experience or a combination of education, professional certifications, and direct experience may be used to meet educational requirement.
Must be able to obtain and maintain a DOE security clearance. US Citizenship is legally required.
Preferred Qualifications:
Preferred candidates should have diverse and in-depth skills and experience in keeping assigned applications operational by testing product upgrades, providing customer support, and problem-solving customer issues.
Data extraction, transformation, and loading (ETL/ELT) concepts.
Data integration between applications, databases, APIs, or external systems.
Development of automated data-processing workflows.
Data validation, cleansing, reconciliation, and quality assurance.
Application and database performance troubleshooting.
Strong communication skills (written and oral) to foster collaborative and productive relationships within a team of engineers.
Explains complex information to others in straightforward situations.
Knowledge and experience in some of the following: ITIL, leading software development teams, full-stack development, software development lifecycle, application architecture, Data pipelines, Containers, web application technologies, Application Programming Interface (API) development, data analysis, GIT Administration, Azure Devops development, C++, C #, Java, Python, Ruby, SharePoint/Power Platforms, PowerBI, SQL Developer, Agile or Scrum framework, version control.