![]() Craig ReboManaging Member ofAtala Solutions, LLCSan Antonio, Texas, United Statesinfo@AtalaSolutions.com |
SUMMARY
Results-driven Senior Software Developer experienced in designing, developing, and delivering enterprise applications for the DoD, VA, and Fortune 500 companies. Experienced with C#, Java, C++, Blazor, Angular, React, SQL Server and Oracle with a strong background in security-compliant, mission-critical systems. Skilled at modernizing legacy codebases, leading small development teams, and delivering production-ready solutions under tight deadlines. The following is a list of demonstration projects for your review. |
||
Corporate Dental System (CDS)Senior Software AnalystOctober 2016 - Present |
Support the Department of Defense’s dental mission that allows providers to process dental workload data and acquire digital images.
Agile environment with 2-week sprints, refinement and retrospective for each sprint.
An Azure DevOps-based CI/CD pipeline has been established, with its functionalities enhanced by the integration of custom applications and scripts.
Git and Sourcetree are utilized for source control.
Work Product Backlog Items (PBIs) on a variety of technologies. Collaborate with cross-functional teams to troubleshoot and resolve issues. Provide proof of concept solutions for demos and implementation as requested. Work closely with DevOps team to maintain CI/CD pipelines and automation processes. Lead developer on a team responsible for upgrading legacy projects to .Net Core. Assist with solving technical issues, keep the team on track and continue to write code. Converted several legacy APIs to C# minimal APIs and others to newer MVC APIs. Upgraded legacy data layers to EF Core using scaffolding and integrating with existing business logic. Developed a Blazor server application that allows users to download an encrypted data file for import into a dental desktop application. Users navigate through a series of views, searching and selecting criteria along the way. In the last step of the wizard, data is retrieved and packaged into an encrypted JSON file for download. ASP.NET Core and the MudBlazor Material design component framework were used to create the application. Senior developer on a remote version of dental software for U.S. Navy Ships called Mobile Dental System (MDS). MDS is a Windows C# desktop application that allows providers to process dental encounters. Created a windows service to handle hosting an AngularJS SPA application and Web APIs from inside the Windows executable. Web API is protected using Common Access Cards and Bearer tokens. Senior developer on the Mobilized Sync API. This ASP.Net Web API allows the Mobilized application to download and upload encounter data to a central SQL Server database. Created several custom Authorize action filters that allow us to easily decorate API actions to ensure the user has appropriate permissions to perform certain tasks. Senior developer on the Tri-Service Exam Module (TEM) project. Microsoft ASP.NET MVC/AngularJS website that allows dentists to manage patient encounters and readiness through a series of Wizard-like tab screens. The application uses the Repository pattern for data access. APIs communicate with a business layer and the business layer accesses a data layer. Follows a Restful design pattern using the Http Verbs: Get, Post, Put and Delete. The data layer uses Entity Framework and LINQ to access a Microsoft SQL Server database. For more advanced queries spanning multiple databases the data layer uses SQL Server Stored Procedures. Maintain code review checklists and assist with resolving IV&V findings related to ATO. Part of a team responsible for implementing Fortify static code analyzer into our development process. Also responsible for troubleshooting production issues and working hot fixes. |
||
Vioita.comSenior Software EngineerJanuary 2023 - January 2025part-time |
Vioita.com is a five card draw poker game developed using Blazor and ASP.Net core.
The application is broken into 2 components, one is a C# class library that contains all models and logic for running the game and the other is a server side web application. Created components to display the cards and allow the user to discard/draw and I used EF Core to retrieve motivational messages and save game state to a SQL Server database. Users can re-load past tournaments and continue where they left off. |
||
GroovyFrames.com
|
Create your own generative art frame borders and then use the generated images in the production of your groovy frame. HTML, Javascript, MS SQL Server, C#, Java, Processing.org sketchbook, Etsy.
GroovyFrames.com offers custom picture frames that combine spin art, algorithms and imagination into interesting "bakes". Create your own custom frame borders using our software, then use the generated images in the production of your groovy frame. Groovy frames draws from classic "spin art", where paint is randomly splattered onto a canvas. Our earliest creations were done with real paint and spun onto wooden frames. We took our ideas and built a rotating canvas in code where we can draw on the background as it spins using custom algorithms. |
||
Algographics.ioBlockchain ResearchJanuary 2020 - December 2022part-time |
Worked with two other developers on a Cardano stake pool explorer that analyzes the publicly available registration data and other data elements such as number of produced blocks and active stake.
Created a Windows service using C# that syncs data from multiple sources to a SQL server database.
Website was built using React.
Minted some of the earliest NFTs on the Cardano blockchain. Created Unix shell scripts that interact with the Cardano CLI and Postgres/SQL Server database. These scripts are used to process NFT sales transactions from the Cardano Blockchain. Used the processing.io Java based sketchbook software and Eclipse to create generative art NFT images for multiple series. Pinata.cloud API and nft.storage were used to store the NFT images. I Setup Ubuntu block producer and relay on my home network and ran a Cardano stake pool for about a year. Created Unix scripts to monitor various aspects of running the pool. The pool ran under the tickers LOCO and later changed to TRAIN. Minted 75 blocks but shut the pool down to focus on other commitments. Visit Algographics.io to see my NFT work. |
||
Intellica CorporationPrincipal Software EngineerApril 2002 - October 2016 |
Experienced with both Client/Server and Web applications. Proficient using Microsoft® C#, Visual C++, Visual Basic, Javascript, ASP.NET, EXT.NET/EXT JS and Oracle® PL/SQL as well as Crystal Reports.
Setup a CI/CD pipeline using Jenkins, Git and other tools to automate builds/tests and deploy code changes faster with increased quality.
Lead developer on the U.S. Department of Veterans Affairs Traumatic Brain Injury Clinical Decision Support application (TBI CDS). TBI CDS aids rehabilitation and TBI care providers in delivering the most appropriate treatments for Veterans by assessing treatment strategies and clinical guidelines. ASP.NET/C# Web application that communicates with the VA’s Computerized Patient Record System (CPRS) / VistA through the Medical Domain Web Services (MDWS) interface. TBI CDS allows the user to login to MDWS/CPRS, lookup patients and write Text Integration Utilities (TIU) Notes to MDWS/CPRS. Back-end database is Oracle and EXT.NET/Ext Js is used as the web framework to ensure a common look and feel throughout the application. Developed several master pages to create a consistent look and feel across the application. All master pages derive from a single base master page. This base page contains common functions that are used across all pages and acts as a central controller for security, auditing and page flow. Also developed numerous detail pages, controls and reports for the application. Lead developer on the U.S. Department of Veterans Affairs Pre-Procedure prototype application. ASP.NET/C# Web application that allows providers to document Pre-Procedure checklists. Provides for a comprehensive audit trail and retrieves data such as problem lists and scheduled procedures. The back-end database for the application is Oracle. Senior developer on the Air Force Substance Use Assessment Tool (SUAT). SUAT is a Visual C++ desktop application used by the Air Force to track substance abuse. The application allows patients to take a series of standard assessments and generates flags based on the patient’s response. The backend database is Oracle and Crystal reports is used as the reporting tool. Senior developer on the Air Force Web-based Health Assessment (AF Web HA) project. AF Web HA is a self-report tool (SRT) that allows military personnel to take a health assessment over the web. The tool gathers, scores, interprets and provides five types of reports that are all electronically available immediately after the user completes the questionnaire. The web site was developed using Active Server Pages and the backend database is Oracle. Senior developer on the Armed Forces Health Longitudinal Technology Application (AHLTA), Navy Individual Medical Readiness (IMR) project. Navy IMR is a plug-in to AHLTA used to track the medical readiness of Navy personnel. Used existing AHLTA interfaces to develop a plug-in application for AHLTA. The application integrates allergies, meds, problems, immunizations and labs directly from AHLTA and gathers additional IMR data from the user. The plug-in also uses the AHLTA wellness reminder interface to generate wellness reminders based on information stored. Developed and integrated an IMR summary report using Crystal Reports. When the IMR form is edited, a new AHLTA encounter is created, and the contents of the form can be written to the note using existing AHLTA interfaces. Developed a plugin application for the Composite Health Care System II (CHCSII / AHLTA). Visual C++ ATL/COM component that implements the COM interfaces necessary to plug into the CHCSII/AHLTA Client. The Component allows developers to load and display MFC views from Visual C++ MFC extension dlls. This allows the development team to focus on building the application using C++/MFC without worrying about the details of the CHCSII/AHLTA COM interfaces. Ported several components from Medbase to AHLTA using the plugin. Led the development of a Web application to track Tuberculosis test results for hospital employees at Brooke Army Medical Center. The application was developed using Microsoft Visual Studio .Net and follows the Model, View, Controller (MVC) design pattern. Developed a base Controller page that all .aspx pages derive from. The application uses Windows Forms Authentication with Windows user accounts managed via Active Directory. Security is role based and roles are represented by Windows groups. Developed several C# data access components that are used to execute queries against a SQL Server database and retrieve DataSets from Oracle Stored Procedures. All model data is accessed from the View via business objects developed in C#. The business objects use the data access components to access data in a SQL Server HR database and an Oracle Medical database. Developed an application framework for a Windows desktop application called Medbase. This framework allows developers to create plugins to the Medbase container by implementing a set of standard API functions in separate MFC extension dlls. Once the plugin is defined in the database it will automatically appear in the applications tool bar. Also developed a set of re-usable libraries and template classes that developers can use to access application services and data. Developed numerous modules for the Medbase application to include patient and provider summary screens, classes to access data stored on smart cards and components to load data from Web Services. Experienced in implementing security processes that are required by the Department of Defense (DoD). Responsible for scanning source code with Fortify and implementing security fixes. |
||
USAAIT Systems AnalystMarch 2001 - January 2003 |
Provide development support for the Investment Applications division. Development environments include Java, Visual C++, Visual Basic, Informix 4GL and PL/SQL.
Setup procedures for server-side Java development to include directory structures for source files, compiled classes and Javadoc files. Ported several server-side Informix 4gl programs to Java. Developed Java utility classes to connect to JDBC data sources and manage log files. Headed the development of a Visual Basic application called Mutual Fund GUI to manage mutual fund sales and service. Mutual Fund GUI uses Oracle PL/SQL Stored Procedures to access data from an Oracle database. Prototyped a proof-of-concept application to port Mutual Fund GUI to a web application using Java Server Pages, Servlets and Enterprise JavaBeans. Developed Oracle SQL Loader files and PL/SQL stored procedures to validate and import educational 529 data from mainframe files to an Oracle database. |
||
BathAndBodyStore.comSenior Software EngineerJan 1999 - Feb 2003part-time |
Family owned business that offers quality bath and body products made from natural ingredients.
The goal is to provide customers with detailed product descriptions, crystal clear images and a web site "Built for Shopping".
No lengthy account setup, no long forms to fill out, no passwords to remember!
The site also has an administrative area where the user can manage products, upload pictures and process orders. Classic ASP/VBScript website with hand coded Active Server Pages and an Oracle database backend. Follows a Model-View-Controller (MVC) pattern with separate .asp files dedicated to handling data access and business logic. A controller page (bathandbody.asp) swaps out sub pages based on query string parameters. The site can be seen at http://rebosoftware.com/bathandbody.asp for demonstration purposes. |
||
Science Applications International CorporationSenior Software EngineerSeptember 1996 - March 2001 |
Provide software development support for applications used throughout Wilford Hall Medical Center. Development environments include Visual C++, Visual Basic,
Active Server Pages (ASP), HTML, VBScript and JavaScript.
Developed a Web application called Patient Profile that allows providers to view patient admissions, appointments, dictations, labs, rads, procedures and cardiology notes. The application is hosted on Microsoft Internet Information Services (IIS) and accesses two Oracle database servers to retrieve data. Developed a COM component using Visual C++/ATL to authenticate users against a VMS/Mumps database server called The Composite Health Care System (CHCS). The COM login component resides on the Web server and exchanges system defined HL7 messages with CHCS via TCP/IP to authenticate the user. Led the development of a client/server cardiology system called Cardio to replace an existing system developed in MS-Access. Cardio is written in Visual Basic and accesses an Oracle central database. The application allows doctors and technicians to track visits to the cardiology department and have their own specialized medications, allergies and problem lists. Crystal Reports is used as the reporting tool for the system. Headed the development a Visual C++ client-server application called Preventive Health Care Application (PHCA). The application utilizes an explorer type interface where the user can add, delete and view preventive health care database records from a drill down tree view. PHCA makes an ODBC connection to an NT database server running Informix ODS as well as a TCP/IP connection to CHCS. ODBC communication is accomplished using the MFC CDatabase and CRecordset classes and associated methods and properties to store and validate data. Crystal Reports is used as the reporting tool for the system. Designed the database for the PHCA application. Created the installation package using InstallShield and managed source control with Visual Source Safe. Worked closely with clinical analysts and other programmers to implement functionality. Developed a Windows DLL to handle the TCP/IP communication to CHCS using the MFC CAsyncsocket class and other self-developed classes to parse incoming/outgoing HL7 messages and store data to internal structures. This DLL is also used by a commercial immunization tracking system to pull demographic data from CHCS. It allows the developer to make simple calls to connect to CHCS, do patient lookups and then retrieve the relevant data using get methods. |
||
Computer Sciences Corporation (CSC)Software EngineerJanuary 1996 - September 1996 |
Provide software development support for applications that interface with the Composite Health Care System (CHCS).
Enhanced exisiting Microsoft Access applications for tracking employee training and availability. Developed a Visual Basic prototype application for tracking preventive health care. |
||
Computer Data Systems Inc. (CDSI)Systems Engineer/Task LeaderApril 1995 - January 1996 |
Provide software engineering and development support for the Automated Record Management System (ARMS).
ARMS is a digital imaging/ optical storage system used to store and retrieve Air Force personnel records.
The ARMS system consists of a Pyramid host computer, Computer Output Microfiche machines, four optical platter juke boxes, high resolution scanners and personal computers.
Maintained software, monitored processing and provided a variety of other functions related to software support.
Developed Unix shell scripts to monitor system performance and automate system administration tasks.
Developed a communications application using Visual C++, Windows SDK and the Winsock library. The application allows the software section to alert end users of system information such as down times and problem areas. Communications between the software section and the end users is over UDP sockets. When the software section wants to broadcast a message, the user types in the message and clicks send. All clients who have the software loaded will pop up a dialog that displays the current message date and time. |
||
United States Air ForceSmall Computer Help Desk ManagerDatabase Application DevelopmentAugust 1988 - April 1995 |
Developed and managed MS-Access database applications. Knowledgeable in relational database design and implementation.
Developed a multi-user, centralized database application to track all communications projects on Lackland Air Force Base. Created other applications to track computer purchase requirements, computer maintenance, automated data processing equipment, unit personnel and base dormitories. Consultant and approving authority for computer systems ranging from stand alone personal computers to local area networks. Provided technical assistance on the use of software, peripherals and communications equipment. Performed Unix system administration tasks and shell programming. Performed maintenance on personal computers, telecommunications systems and cryptographic equipment. Installed hardware and cable for multiple local area networks. Developed an application in Borland ObjectVision to track computer vendors and pricing information. |
||
Education |
|