Ask HN: What's a cool internal tool you've built for your company? - PodCurator
======
mattbgates
We just needed something to keep track of how long it took us to do a job so I
built a simple tool to keep track of time, update time, make notes, log
entries, and even add teams so you can see what everyone is working on. Feel
free to use it and report any bugs.

It was excited and my team were the ones who developed and designed it. I just
made it work. But I don't really maintain it much anymore. My team stopped
using it a while ago and while there was some discussion to build in new
features... I just didn't see a need as they were using it less.

I mainly use it for my own projects when I work for clients to keep track of
my time commitment. It can be used as a time invoice. So you hit the start
button and it logs your time in and you leave yourself a note.

It might be outdated and not work on some browsers, but it still works for me
on Google Chrome. A few of my friends sometimes use it to to keep track of
time. But when I was developing it, I never build anything specifically
branded to something, so I created it as a generic time tracker, and anyone
can use it.

[https://edithours.com](https://edithours.com)

~~~
PodCurator
That's pretty cool, I've tried to do this manually just for personal
productivity.

What type of industry/role were you in that you had to keep such diligent
track of what people were working on? For freelancing/agency work that makes a
lot of sense!

~~~
mattbgates
Custom graphics and web design projects. Just had to start the timer, keep
track of what we were doing, and submit the final time. With teams, it all
adds up, and you can see everyone's time it took on a project and you can all
add to the same time record.

~~~
PodCurator
Did it ever feel "big brothery" for your team that was on it? Or did it not
matter b/c you were being paid hourly

~~~
mattbgates
I am salary so it didn't really matter but I reminded myself to only work on
that project at work. I did "pick out" a general design template that wasn't
too fancy, not too boring, but just needed it to look professional enough as a
functional tool.

Everyone had their say in design, colors, etc. They had a say in functionality
and things like that. The concept was simple: keep track of time. Then it was
my team who suggested: "since we all work on the same projects sometimes, can
all of our time count towards the same project and can we see how much time
everyone spent on it individually and still know the total time it took?"
Definitely.

It's probably got some bugs and could stand to use an update, but I've got too
much going on right now. They had a few feature requests themselves, but
seeing as we got more back into streamlining jobs at work and less custom
jobs, they stopped using it, and I didn't do anything more with it. But as a
freelancer and a contractor for different companies and working on some
projects with multiple people around the world, allowing them to add to my
time entries too allows me to see the workload, what is being done, how much
time it takes, etc.

I started it because my boss had been seeking to understand what everyone did
besides their main skillset. So she assigned everyone a personal project based
on what we told and showed her we could do. She did this so that she could
understand how she might use a specific team member for a specific task that
was "outside their job description yet part of it." (You all know how that
goes.)

While my day job is mostly web design, my night job is web development and
technical writing. We streamline our work which takes generally 1-2 hours
processing time with a 4 hour total turnaround time, but for some jobs, we
were getting "custom requests" or "custom work" from clients, which means
they'd want more from the product.

With some CSS or Javascript, nearly everything is possible, but it does take
time to do, but most clients might see it as: "Thanks for adding the tab
toggle that allows us to scroll through social media without ever going below
the fold." That isn't something that just happens in seconds nor is it "point
and click". There is actual design and development that need to happen and
things that need to connect and tests that need to be done.

Client reality vs. client expectation in terms of what they pay vs. the amount
of work they think we did is far from reality, and you may have spent 5 hours
on it, but they think you may have spent 5 minutes doing it which is common.

Unfortunately, from the time it was taking to do some research and write the
code, get it to work and look good, and actually have a client say, "That's
exactly what I wanted and here's the money for the job. I'm definitely happy I
helped make your life easier and we were exactly on the same page the first
time."

 _crickets_

Anyone? Bueller? Yeah.. the first time a client sees a project, it is expected
they won't like it or want to make changes, and so, when it comes to custom
work, it's very hard to "get it right" or adjust for all screen sizes or
whatever the case may be. When do the requests stop? We pride ourselves on not
hardly ever saying, "We can't" or "No". It happens, but we try not to. More
importantly, if the requests continue, can we charge for those additional
hours outside of the norm?

Hours upon hours and time and money and "doing things just so the client can
see how it looks" costs businesses MILLIONS to BILLIONS of dollars every year
in lost time or productivity. So our clients pay for an allotment of 5 hours
of web design time. After that... well, they can opt to pay more. However, we
had gotten so used to streamlining everything and had been doing it for years
that when requests were coming in, we were just doing them, and not billing
any of those clients for those hours.

And the thing is... you can ask any designer or employee of yours how long
something took, and they will definitely give you a rough idea. How long does
it take you to do that thing? 15 minutes. 30 minutes. 1 hour. And sure, we can
charge the clients that, but we weren't all sure on the amount of time it was
taking us, especially if multiple people are working on the same project.

There are tools that do exist to record your time and things like that, but we
just weren't using one, and my company was already losing money, so they
weren't going to exactly go out and buy any new software, so I volunteered my
services. I've been at my job for almost a decade now so brownie points and
the like do not actually work for me anymore, I help when I can. So instead,
it is more like I have to show that I have relevant skills that they do not
need to replace me with anyone else, and that I can do anything they throw my
way.

------
roland35
I've built a tool to perform automated testing of hardware using Robot
Framework. Despite the name Robot Framework it actually isn't really targeted
at robotics, but it ends up working out well since you can write your own
Python interface libraries!

I've used this method to create automated tests for a variety of projects
including industrial machinery, robots, and CAN-based vehicle controllers.

------
johndavid9991
I manage 30+ employees, which includes at least 20 software engineers. My team
and I eventually built an Employee and Project management software that
addresses pain points of managing multiple teams and multiple projects. We
don't use JIRA/ASANA or other third party HR tools. We are currently refining
these tools for other companies to use also, especially this time of COVID-19.

~~~
PodCurator
Nice, what did you not love about jira/asana that caused you to build your
own?

~~~
johndavid9991
First, is about simplicity, ASANA, for example, used to be very easy and
straightforward to use, now got more complex than before. JIRA has tons of
features, most of it we don't need. We wanted to use a simple tool that
focuses on getting things done and enables us to make data-driven decisions.

Second, is we want to have full control over the data and build features
custom to our needs.

Third, we don't have to pay per user per month.

------
mattcanhack
I was one of two developers on a team of 30 analysts and I would regularly get
requests to add employee details (name, manager, director, email) to various
spreadsheets. It wasn't difficult but it was a tedious process that took away
from far more interesting problems.

Eventually I built a small web app that would allow a user to upload their
spreadsheet and have employee details added based on some identifier. It was
an enterprise so there was at least three unique ways to match someone. I
wrote most of it in one night and spent evenings fixing bugs for a week. While
it was very useful, it wasn't "core business" so I didn't get to spend any
work time making upgrades.

Eight years later, I still get an occasional email but I no longer have access
to the source or server. Definitely a lesson in how long shitty code an live.

------
weitzj
A remote monitoring library for mobile devices and a collector service, which
ingests the data.

The devs can collect metrics and logs on iOS and Android, and send it To the
collector service, which will put the data into Prometheus and Elasticsearch.

This helps staying PCI DSS compliant and also ensures the app release cycles
are not impacted by third party monitoring libraries, which might not support
all iOS/Android versions we need to support.

