> Markdown version of [/jobs/ext/517714-systems-developer](https://www.wearedevelopers.com/jobs/ext/517714-systems-developer). Every page supports `.md` or `Accept: text/markdown`. Links point to the HTML versions so they work for humans too. Agent guide: [/agents.md](https://www.wearedevelopers.com/agents.md). --- # Systems Developer - **Company:** Tech Inc - **Location:** Montpelier, VT, United States - **Contract:** Permanent contract - **Skills:** HTML, JavaScript (Programming Language), Application Programming Interfaces (APIs), Amazon Web Services, Amazon S3, Apache HTTP Server, ArcGIS (Software), ArcSDE, HTML5, User Authentication, Cascading Style Sheets (CSS), Databases, Database Servers, Linux, Microprocessors, Middleware, Spatial Databases, IP Addressing, Python (Programming Language), PostgreSQL, Node.Js, OpenID, PostGIS, Security Assertion Markup Language (SAML), Private Cloud Environment, Apex Code, Scripting, Transport Layer Security, Okta, Backend, AngularJS, AWS Fargate, Front End Software Development, Restful APIs, Docker - **Published:** June 10, 2026 - **Apply:** https://www.indeed.com/viewjob?jk=08d79ab65416cbac ## About the Role Do you have experience in SSL? ## Description requests from the internet for FarmPREP. The server has 2 virtual CPUs, is assigned 1gb of RAM, and has 20gb of storage. * Main API Server: The API server runs a custom-built NodeJS based middleware ReST API that allows the HTML/Javascript running in the user's web browser (the front end) to connect to and interact with the database on the backend. The server has 2 virtual CPUs, is assigned 2gb of RAM, and has 20gb of storage. * Database Server: The database server runs a standard instance of PostGreSQL that can only be connected to by the API servers. The PostGreSQL database is enabled with ArcGIS Enterprise Geodatabase functionality (formerly known as ArcSDE) as well as PostGIS functionality. The database server currently runs PostGreSQL v12 with ArcGIS Enterprise Geodatabase components at v10.9.1. The server has 8 virtual CPUs, is assigned 15gb of RAM, and is assigned 250gb of storage. * mPipe API Server: A second API server, called the mPipe server, is responsible for managing the APEX model running process. This server runs a custom NodeJS ReST API, like the Main API Server, but also takes on communication with the AWS Fargate service, as well as running various Python scripts. The server has 2 virtual CPUs, is assigned 8gb of RAM, and has 20gb of storage. The four servers are setup and held inside of a Virtual Private Cloud that enables them to communicate with each other using private IP addressing, while exposing only the web and API servers to the internet via ports 80 and 443 (where port 80 in the application kicks the user over to use port 443 to enforce SSL use). APEX Containers: Separate from the servers is the containerized APEX system. A Docker container template has been created for Farm-PREP that runs the Linux compiled APEX model. The container is pre-packaged with much of what it needs to run the model. However, every time a container instance is created from this template, it is given input parameters that inform the container on how to customize the APEX run based on user inputs and field-specific information. Once the container instance starts running it uses a unique ID and connects back to the main PostGreSQL database to fetch these details for the APEX run. Python scripts are run on the container instance to generate site/user specific input files that APEX needs before it is executed. Once APEX is run, the resulting outputs are returned to the database, and the output files are compressed into a single file that is uploaded to AWS before the container instance stops running and disappears. The containers are executed inside of AWS Fargate, which allows the system to run thousands of container instances simultaneously, if necessary (or sometimes just run 1 or 2 instances), therefore enabling a massive time savings from running the APEX model runs sequentially. The following technical requirements for each of the primary components of FarmPREP are listed below. * Front-end: o HTML5 o SCSS o Esri ArcGIS Javascript API o Angular * Middleware Main API & mPipe API: o NodeJS o Linux * Backend: o PostGreSQL/PostGIS o Linux o Apache2 * APEX: o The APEX model's code is maintained by Texas A&M o Docker o Python o Linux o AWS S3 Amazon Web Service (AWS) ECS/ECR & Fargate Authentication 1. Login is routed through the State's central identity provider login page-Okta for external users, Entra for internal users-ensuring state-approved authenticators and user experience. 2. Authentication for both internal and external users is handled via SAML 2.0 or OIDC only, and in conformance with their respective standards. 3. Authentication is validated in DEV and TEST environments, in addition to PROD, when directed by the State. 4. Applications serving both internal and external users support two identity providers with separate URLs. Where an application cannot support two providers, the State may agree to handle routing through a single IDP upon request. 5. Applications dependent on internal/external user status can reliably determine that status ## Related Videos - [Web development best practices in 2021](https://www.wearedevelopers.com/videos/280-web-development-best-practices-in-2021) - [Docker network without Docker](https://www.wearedevelopers.com/videos/1418-docker-network-without-docker) - [The Resilience of the World Wide Web](https://www.wearedevelopers.com/videos/1281-the-resilience-of-the-world-wide-web) - [Build and Deploy a Fullstack App with Open Source Tooling](https://www.wearedevelopers.com/videos/775-build-and-deploy-a-fullstack-app-with-open-source-tooling) - [Docker exec without Docker](https://www.wearedevelopers.com/videos/1094-docker-exec-without-docker) - [NoLoJS - Avoiding JavaScript Cruft with HTML and CSS - Aaron T. Grogg](https://www.wearedevelopers.com/videos/1806-nolojs-avoiding-javascript-cruft-with-html-and-css-aaron-t-grogg) ## Related Articles - [Dev Digest 120 - Apple and peers](https://www.wearedevelopers.com/magazine/455-dev-digest-120-apple-and-peers) - [Highest Paying Tech Companies for Developers](https://www.wearedevelopers.com/magazine/220-highest-paying-tech-companies-for-developers) - [Dev Digest 131 - AI'm not sure about OSS](https://www.wearedevelopers.com/magazine/472-dev-digest-131-ai-m-not-sure-about-oss) - [Dev Digest 101 - the XXX edition](https://www.wearedevelopers.com/magazine/382-dev-digest-101-the-xxx-edition) - [Dev Digest 138 - Are you secure about this?](https://www.wearedevelopers.com/magazine/486-dev-digest-138-are-you-secure-about-this) - [Dev Digest 121 - AI goes offline](https://www.wearedevelopers.com/magazine/456-dev-digest-121-ai-goes-offline)